From 57b59d8b17eead04801ea3481cfd9e53bea8c511 Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Mon, 17 Feb 2025 20:49:22 +0100 Subject: [PATCH] Update default functions-mysql.ini with predefined line breaks and much more help content --- extra/functions-ini-generator.php | 4 +- out/functions-mysql.ini | 1541 ++++++++++++++--------------- 2 files changed, 762 insertions(+), 783 deletions(-) diff --git a/extra/functions-ini-generator.php b/extra/functions-ini-generator.php index 166351a9..8123a10f 100644 --- a/extra/functions-ini-generator.php +++ b/extra/functions-ini-generator.php @@ -276,8 +276,10 @@ function gen_pg(): string // SQLite: # echo gen_sqlite(); +// MySQL 5.7: +echo gen_mysql(3334); // MySQL 8.3: -echo gen_mysql(3308); +#echo gen_mysql(3308); // MariaDB 11.7: # echo gen_mysql(3317); diff --git a/out/functions-mysql.ini b/out/functions-mysql.ini index 4d8f4a23..9a47ab28 100644 --- a/out/functions-mysql.ini +++ b/out/functions-mysql.ini @@ -1,1363 +1,1340 @@ [ABS] declaration=X category=Numeric Functions -description=Returns the absolute value of X, or NULL if X is NULL +description=Returns the absolute value of X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [ACOS] declaration=X category=Numeric Functions -description=Returns the arc cosine of X, that is, the value whose cosine is X +description=Returns the arc cosine of X, that is, the value whose cosine is X.\nReturns NULL if X is not in the range -1 to 1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [ADDDATE] declaration=date,INTERVAL expr unit category=Date and Time Functions -description=When invoked with the INTERVAL form of the second argument, ADDDATE() is a\nsynonym for DATE_ADD() +description=When invoked with the INTERVAL form of the second argument, ADDDATE()\nis a synonym for DATE_ADD(). The related function SUBDATE() is a\nsynonym for DATE_SUB(). For information on the INTERVAL unit argument,\nsee the discussion for DATE_ADD().\n\nmysql> SELECT DATE_ADD('2008-01-02', INTERVAL 31 DAY);\n -> '2008-02-02'\nmysql> SELECT ADDDATE('2008-01-02', INTERVAL 31 DAY);\n -> '2008-02-02'\n\nWhen invoked with the days form of the second argument, MySQL treats it\nas an integer number of days to be added to expr.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [ADDTIME] declaration=expr1,expr2 category=Date and Time Functions -description=ADDTIME() adds expr2 to expr1 and returns the result +description=ADDTIME() adds expr2 to expr1 and returns the result. expr1 is a time\nor datetime expression, and expr2 is a time expression.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [AES_DECRYPT] declaration=crypt_str,key_str[,init_vector] category=Encryption Functions -description=This function decrypts data using the official AES (Advanced Encryption\nStandard) algorithm +description=This function decrypts data using the official AES (Advanced Encryption\nStandard) algorithm. For more information, see the description of\nAES_ENCRYPT().\n\nThe optional initialization vector argument, init_vector, is available\nas of MySQL 5.7.4. As of that version, statements that use\nAES_DECRYPT() are unsafe for statement-based replication and cannot be\nstored in the query cache.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [AES_ENCRYPT] declaration=str,key_str[,init_vector] category=Encryption Functions -description=AES_ENCRYPT() and AES_DECRYPT() implement encryption and decryption of data\nusing the official AES (Advanced Encryption Standard) algorithm, previously\nknown as "Rijndael +description=AES_ENCRYPT() and AES_DECRYPT() implement encryption and decryption of\ndata using the official AES (Advanced Encryption Standard) algorithm,\npreviously known as "Rijndael." The AES standard permits various key\nlengths. By default these functions implement AES with a 128-bit key\nlength. As of MySQL 5.7.4, key lengths of 196 or 256 bits can be used,\nas described later. The key length is a trade off between performance\nand security.\n\nAES_ENCRYPT() encrypts the string str using the key string key_str and\nreturns a binary string containing the encrypted output. AES_DECRYPT()\ndecrypts the encrypted string crypt_str using the key string key_str\nand returns the original plaintext string. If either function argument\nis NULL, the function returns NULL.\n\nThe str and crypt_str arguments can be any length, and padding is\nautomatically added to str so it is a multiple of a block as required\nby block-based algorithms such as AES. This padding is automatically\nremoved by the AES_DECRYPT() function. The length of crypt_str can be\ncalculated using this formula:\n\n16 * (trunc(string_length / 16) + 1)\n\nFor a key length of 128 bits, the most secure way to pass a key to the\nkey_str argument is to create a truly random 128-bit value and pass it\nas a binary value. For example:\n\nINSERT INTO t\nVALUES (1,AES_ENCRYPT('text',UNHEX('F3229A0B371ED2D9441B830D21A390C3')));\n\nA passphrase can be used to generate an AES key by hashing the\npassphrase. For example:\n\nINSERT INTO t VALUES (1,AES_ENCRYPT('text', SHA2('My secret passphrase',512)));\n\nDo not pass a password or passphrase directly to crypt_str, hash it\nfirst. Previous versions of this documentation suggested the former\napproach, but it is no longer recommended as the examples shown here\nare more secure.\n\nIf AES_DECRYPT() detects invalid data or incorrect padding, it returns\nNULL. However, it is possible for AES_DECRYPT() to return a non-NULL\nvalue (possibly garbage) if the input data or the key is invalid.\n\nAs of MySQL 5.7.4, AES_ENCRYPT() and AES_DECRYPT() permit control of\nthe block encryption mode and take an optional init_vector\ninitialization vector argument:\n\no The block_encryption_mode system variable controls the mode for\n block-based encryption algorithms. Its default value is aes-128-ecb,\n which signifies encryption using a key length of 128 bits and ECB\n ... [ANY_VALUE] declaration=arg category=Miscellaneous Functions -description=This function is useful for GROUP BY queries when the ONLY_FULL_GROUP_BY\nSQL mode is enabled, for cases when MySQL rejects a query that you know is\nvalid for reasons that MySQL cannot determine +description=This function is useful for GROUP BY queries when the\nONLY_FULL_GROUP_BY SQL mode is enabled, for cases when MySQL rejects a\nquery that you know is valid for reasons that MySQL cannot determine.\nThe function return value and type are the same as the return value and\ntype of its argument, but the function result is not checked for the\nONLY_FULL_GROUP_BY SQL mode.\n\nFor example, if name is a nonindexed column, the following query fails\nwith ONLY_FULL_GROUP_BY enabled:\n\nmysql> SELECT name, address, MAX(age) FROM t GROUP BY name;\nERROR 1055 (42000): Expression #2 of SELECT list is not in GROUP\nBY clause and contains nonaggregated column 'mydb.t.address' which\nis not functionally dependent on columns in GROUP BY clause; this\nis incompatible with sql_mode=only_full_group_by\n\nThe failure occurs because address is a nonaggregated column that is\nneither named among GROUP BY columns nor functionally dependent on\nthem. As a result, the address value for rows within each name group is\nnondeterministic. There are multiple ways to cause MySQL to accept the\nquery:\n\no Alter the table to make name a primary key or a unique NOT NULL\n column. This enables MySQL to determine that address is functionally\n dependent on name; that is, address is uniquely determined by name.\n (This technique is inapplicable if NULL must be permitted as a valid\n name value.)\n\no Use ANY_VALUE() to refer to address:\n\nSELECT name, ANY_VALUE(address), MAX(age) FROM t GROUP BY name;\n\n In this case, MySQL ignores the nondeterminism of address values\n within each name group and accepts the query. This may be useful if\n you simply do not care which value of a nonaggregated column is\n chosen for each group. ANY_VALUE() is not an aggregate function,\n unlike functions such as SUM() or COUNT(). It simply acts to suppress\n the test for nondeterminism.\n\no Disable ONLY_FULL_GROUP_BY. This is equivalent to using ANY_VALUE()\n with ONLY_FULL_GROUP_BY enabled, as described in the previous item.\n\nANY_VALUE() is also useful if functional dependence exists between\ncolumns but MySQL cannot determine it. The following query is valid\nbecause age is functionally dependent on the grouping column age-1, but\nMySQL cannot tell that and rejects the query with ONLY_FULL_GROUP_BY\nenabled:\n\nSELECT age FROM t GROUP BY age-1;\n\n ... +[AREA] +declaration=poly +category=Polygon properties +description=ST_Area() and Area() are synonyms. For more information, see the\ndescription of ST_Area().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html +[ASBINARY] +declaration=g +category=WKB +description=Converts a value in internal geometry format to its WKB representation\nand returns the binary result.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-format-conversion-functions.html [ASCII] declaration=str category=String Functions -description=Returns the numeric value of the leftmost character of the string str +description=Returns the numeric value of the leftmost character of the string str.\nReturns 0 if str is the empty string. Returns NULL if str is NULL.\nASCII() works for 8-bit characters.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [ASIN] declaration=X category=Numeric Functions -description=Returns the arc sine of X, that is, the value whose sine is X -[ASYMMETRIC_DECRYPT] -declaration=algorithm, crypt_str, key_str -category=Enterprise Encryption Functions -description=Decrypts an encrypted string using the given algorithm and key string, and\nreturns the resulting plaintext as a binary string -[ASYMMETRIC_DERIVE] -declaration=pub_key_str, priv_key_str -category=Enterprise Encryption Functions -description=Derives a symmetric key using the private key of one party and the public\nkey of another, and returns the resulting key as a binary string -[ASYMMETRIC_ENCRYPT] -declaration=algorithm, str, key_str -category=Enterprise Encryption Functions -description=Encrypts a string using the given algorithm and key string, and returns the\nresulting ciphertext as a binary string -[ASYMMETRIC_SIGN] -declaration=algorithm, digest_str, priv_key_str, digest_type -category=Enterprise Encryption Functions -description=Signs a digest string using a private key string, and returns the signature\nas a binary string -[ASYMMETRIC_VERIFY] -declaration=algorithm, digest_str, sig_str, pub_key_str, -digest_type -category=Enterprise Encryption Functions -description=Verifies whether the signature string matches the digest string, and\nreturns 1 or 0 to indicate whether verification succeeded or failed +description=Returns the arc sine of X, that is, the value whose sine is X. Returns\nNULL if X is not in the range -1 to 1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[ASTEXT] +declaration=g +category=WKT +description=Converts a value in internal geometry format to its WKT representation\nand returns the string result.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-format-conversion-functions.html [ATAN] declaration=X category=Numeric Functions -description=Returns the arc tangent of X, that is, the value whose tangent is X +description=Returns the arc tangent of X, that is, the value whose tangent is X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[ATAN2] +declaration=Y,X +category=Numeric Functions +description=Returns the arc tangent of the two variables X and Y. It is similar to\ncalculating the arc tangent of Y / X, except that the signs of both\narguments are used to determine the quadrant of the result.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [AVG] declaration=[DISTINCT] expr -category=Aggregate Functions and Modifiers -description=Returns the average value of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the average value of expr. The DISTINCT option can be used to\nreturn the average of the distinct values of expr.\n\nAVG() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [BENCHMARK] declaration=count,expr category=Information Functions -description=The BENCHMARK() function executes the expression expr repeatedly count\ntimes +description=The BENCHMARK() function executes the expression expr repeatedly count\ntimes. It may be used to time how quickly MySQL processes the\nexpression. The result value is always 0. The intended use is from\nwithin the mysql client, which reports query execution times:\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html +[BIGINT] +declaration=M +category=Data Types +description=A large integer. The signed range is -9223372036854775808 to\n9223372036854775807. The unsigned range is 0 to 18446744073709551615.\n\nSERIAL is an alias for BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [BIN] declaration=N category=String Functions -description=Returns a string representation of the binary value of N, where N is a\nlonglong (BIGINT) number -[BIN_TO_UUID] -declaration=binary_uuid -category=Miscellaneous Functions -description=BIN_TO_UUID() is the inverse of UUID_TO_BIN() +description=Returns a string representation of the binary value of N, where N is a\nlonglong (BIGINT) number. This is equivalent to CONV(N,10,2). Returns\nNULL if N is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[BINARY] +declaration=M +category=Data Types +description=The BINARY type is similar to the CHAR type, but stores binary byte\nstrings rather than nonbinary character strings. M represents the\ncolumn length in bytes.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html +[BIT] +declaration=M +category=Data Types +description=A bit-field type. M indicates the number of bits per value, from 1 to\n64. The default is 1 if M is omitted.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [BIT_AND] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the bitwise AND of all bits in expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the bitwise AND of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [BIT_COUNT] declaration=N category=Bit Functions -description=Returns the number of bits that are set in the argument N as an unsigned\n64-bit integer, or NULL if the argument is NULL +description=Returns the number of bits that are set in the argument N.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/bit-functions.html [BIT_LENGTH] declaration=str category=String Functions -description=Returns the length of the string str in bits +description=Returns the length of the string str in bits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [BIT_OR] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the bitwise OR of all bits in expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the bitwise OR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [BIT_XOR] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the bitwise XOR of all bits in expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the bitwise XOR of all bits in expr. The calculation is\nperformed with 64-bit (BIGINT) precision.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html +[BLOB] +declaration=M +category=Data Types +description=A BLOB column with a maximum length of 65,535 (216 - 1) bytes. Each\nBLOB value is stored using a 2-byte length prefix that indicates the\nnumber of bytes in the value.\n\nAn optional length M can be given for this type. If this is done, MySQL\ncreates the column as the smallest BLOB type large enough to hold\nvalues M bytes long.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html +[BUFFER] +declaration=g,d +category=GeometryCollection properties +description=Returns a geometry that represents all points whose distance from the\ngeometry value g is less than or equal to a distance of d.\n\nBuffer() supports negative distances for polygons, multipolygons, and\ngeometry collections containing polygons or multipolygons. For point,\nmultipoint, linestring, multilinestring, and geometry collections not\ncontaining any polygons or multipolygons, Buffer() with a negative\ndistance returns NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [CAST] -declaration=expr AS type [ARRAY] -category=Cast Functions and Operators -description=The CAST() function takes an expression of any type and produces a result\nvalue of the specified type, similar to CONVERT() +declaration=expr AS type +category=String Functions +description=The CAST() function takes an expression of any type and produces a\nresult value of a specified type, similar to CONVERT(). See the\ndescription of CONVERT() for more information.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/cast-functions.html [CEIL] declaration=X category=Numeric Functions -description=CEIL() is a synonym for CEILING() +description=CEIL() is a synonym for CEILING().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [CEILING] declaration=X category=Numeric Functions -description=Returns the smallest integer value not less than X +description=Returns the smallest integer value not less than X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[CENTROID] +declaration=mpoly +category=Polygon properties +description=ST_Centroid() and Centroid() are synonyms. For more information, see\nthe description of ST_Centroid().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-multipolygon-property-functions.html +[CHAR] +declaration=M +category=Data Types +description=collation_name]\n\nA fixed-length string that is always right-padded with spaces to the\nspecified length when stored. M represents the column length in\ncharacters. The range of M is 0 to 255. If M is omitted, the length is\n1.\n\n*Note*: Trailing spaces are removed when CHAR values are retrieved\nunless the PAD_CHAR_TO_FULL_LENGTH SQL mode is enabled.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html [CHARACTER_LENGTH] declaration=str category=String Functions -description=CHARACTER_LENGTH() is a synonym for CHAR_LENGTH() +description=CHARACTER_LENGTH() is a synonym for CHAR_LENGTH().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [CHARSET] declaration=str category=Information Functions -description=Returns the character set of the string argument +description=Returns the character set of the string argument.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [CHAR_LENGTH] declaration=str category=String Functions -description=Returns the length of the string str, measured in characters +description=Returns the length of the string str, measured in characters. A\nmultibyte character counts as a single character. This means that for a\nstring containing five 2-byte characters, LENGTH() returns 10, whereas\nCHAR_LENGTH() returns 5.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [COALESCE] declaration=value,... -category=Comparison Operators -description=Returns the first non-NULL value in the list, or NULL if there are no\nnon-NULL values +category=Comparison operators +description=Returns the first non-NULL value in the list, or NULL if there are no\nnon-NULL values.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html [COERCIBILITY] declaration=str category=Information Functions -description=Returns the collation coercibility value of the string argument +description=Returns the collation coercibility value of the string argument.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [COLLATION] declaration=str category=Information Functions -description=Returns the collation of the string argument +description=Returns the collation of the string argument.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [COMPRESS] declaration=string_to_compress category=Encryption Functions -description=Compresses a string and returns the result as a binary string +description=Compresses a string and returns the result as a binary string. This\nfunction requires MySQL to have been compiled with a compression\nlibrary such as zlib. Otherwise, the return value is always NULL. The\ncompressed string can be uncompressed with UNCOMPRESS().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [CONCAT] declaration=str1,str2,... category=String Functions -description=Returns the string that results from concatenating the arguments +description=Returns the string that results from concatenating the arguments. May\nhave one or more arguments. If all arguments are nonbinary strings, the\nresult is a nonbinary string. If the arguments include any binary\nstrings, the result is a binary string. A numeric argument is converted\nto its equivalent nonbinary string form.\n\nCONCAT() returns NULL if any argument is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [CONCAT_WS] declaration=separator,str1,str2,... category=String Functions -description=CONCAT_WS() stands for Concatenate With Separator and is a special form of\nCONCAT() +description=CONCAT_WS() stands for Concatenate With Separator and is a special form\nof CONCAT(). The first argument is the separator for the rest of the\narguments. The separator is added between the strings to be\nconcatenated. The separator can be a string, as can the rest of the\narguments. If the separator is NULL, the result is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[CONNECTION_ID] +declaration= +category=Information Functions +description=Returns the connection ID (thread ID) for the connection. Every\nconnection has an ID that is unique among the set of currently\nconnected clients.\n\nThe value returned by CONNECTION_ID() is the same type of value as\ndisplayed in the ID column of the INFORMATION_SCHEMA.PROCESSLIST table,\nthe Id column of SHOW PROCESSLIST output, and the PROCESSLIST_ID column\nof the Performance Schema threads table.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html +[CONTAINS] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 completely contains g2. This\ntests the opposite relationship as Within().\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBRContains() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html [CONV] declaration=N,from_base,to_base category=Numeric Functions -description=Converts numbers between different number bases +description=Converts numbers between different number bases. Returns a string\nrepresentation of the number N, converted from base from_base to base\nto_base. Returns NULL if any argument is NULL. The argument N is\ninterpreted as an integer, but may be specified as an integer or a\nstring. The minimum base is 2 and the maximum base is 36. If to_base is\na negative number, N is regarded as a signed number. Otherwise, N is\ntreated as unsigned. CONV() works with 64-bit precision.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [CONVERT] -declaration=expr USING transcoding_name -category=Cast Functions and Operators -description=The CONVERT() function takes an expression of any type and produces a\nresult value of the specified type +declaration=expr,type +category=String Functions +description=The CONVERT() and CAST() functions take an expression of any type and\nproduce a result value of a specified type.\n\nThe type for the result can be one of the following values:\n\no BINARY[(N)]\n\no CHAR[(N)]\n\no DATE\n\no DATETIME\n\no DECIMAL[(M[,D])]\n\no SIGNED [INTEGER]\n\no TIME\n\no UNSIGNED [INTEGER]\n\nBINARY produces a string with the BINARY data type. See\nhttp://dev.mysql.com/doc/refman/5.7/en/binary-varbinary.html for a\ndescription of how this affects comparisons. If the optional length N\nis given, BINARY(N) causes the cast to use no more than N bytes of the\nargument. Values shorter than N bytes are padded with 0x00 bytes to a\nlength of N.\n\nCHAR(N) causes the cast to use no more than N characters of the\nargument.\n\nCAST() and CONVERT(... USING ...) are standard SQL syntax. The\nnon-USING form of CONVERT() is ODBC syntax.\n\nCONVERT() with USING is used to convert data between different\ncharacter sets. In MySQL, transcoding names are the same as the\ncorresponding character set names. For example, this statement converts\nthe string 'abc' in the default character set to the corresponding\nstring in the utf8 character set:\n\nSELECT CONVERT('abc' USING utf8);\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/cast-functions.html [CONVERT_TZ] declaration=dt,from_tz,to_tz category=Date and Time Functions -description=CONVERT_TZ() converts a datetime value dt from the time zone given by\nfrom_tz to the time zone given by to_tz and returns the resulting value +description=CONVERT_TZ() converts a datetime value dt from the time zone given by\nfrom_tz to the time zone given by to_tz and returns the resulting\nvalue. Time zones are specified as described in\nhttp://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html. This\nfunction returns NULL if the arguments are invalid.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[CONVEXHULL] +declaration=g +category=GeometryCollection properties +description=ST_ConvexHull() and ConvexHull() are synonyms. For more information,\nsee the description of ST_ConvexHull().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [COS] declaration=X category=Numeric Functions -description=Returns the cosine of X, where X is given in radians +description=Returns the cosine of X, where X is given in radians.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [COT] declaration=X category=Numeric Functions -description=Returns the cotangent of X +description=Returns the cotangent of X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [COUNT] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns a count of the number of non-NULL values of expr in the rows\nretrieved by a SELECT statement +category=Functions and Modifiers for Use with GROUP BY +description=Returns a count of the number of non-NULL values of expr in the rows\nretrieved by a SELECT statement. The result is a BIGINT value.\n\nCOUNT() returns 0 if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [CRC32] declaration=expr category=Numeric Functions -description=Computes a cyclic redundancy check value and returns a 32-bit unsigned\nvalue -[CREATE_ASYMMETRIC_PRIV_KEY] -declaration=algorithm, {key_len|dh_secret} -category=Enterprise Encryption Functions -description=Creates a private key using the given algorithm and key length or DH\nsecret, and returns the key as a binary string in PEM format -[CREATE_ASYMMETRIC_PUB_KEY] -declaration=algorithm, priv_key_str -category=Enterprise Encryption Functions -description=Derives a public key from the given private key using the given algorithm,\nand returns the key as a binary string in PEM format -[CREATE_DH_PARAMETERS] -declaration=key_len -category=Enterprise Encryption Functions -description=Creates a shared secret for generating a DH private/public key pair and\nreturns a binary string that can be passed to create_asymmetric_priv_key() -[CREATE_DIGEST] -declaration=digest_type, str -category=Enterprise Encryption Functions -description=Creates a digest from the given string using the given digest type, and\nreturns the digest as a binary string -[CURRENT_TIMESTAMP] -name=CURRENT_TIMESTAMP -declaration= -category=Date and Time Functions -description=CURRENT_TIMESTAMP and CURRENT_TIMESTAMP() are synonyms for NOW(). +description=Computes a cyclic redundancy check value and returns a 32-bit unsigned\nvalue. The result is NULL if the argument is NULL. The argument is\nexpected to be a string and (if possible) is treated as one if it is\nnot.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[CROSSES] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 if g1 spatially crosses g2. Returns NULL if g1 is a Polygon\nor a MultiPolygon, or if g2 is a Point or a MultiPoint. Otherwise,\nreturns 0.\n\nThe term spatially crosses denotes a spatial relation between two given\ngeometries that has the following properties:\n\no The two geometries intersect\n\no Their intersection results in a geometry that has a dimension that is\n one less than the maximum dimension of the two given geometries\n\no Their intersection is not equal to either of the two given geometries\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html [CURDATE] declaration= category=Date and Time Functions -description=Returns the current date as a value in ''YYYY-MM-DD'' or\nYYYYMMDD\nformat, depending on whether the function is used in a\nstring or\nnumeric context.\n \n\nSELECT CURDATE();\n+------------+\n| CURDATE() |\n+------------+\n| 2019-03-05 |\n+------------+\n \nIn a numeric context (note this is not performing date\ncalculations):\n \nSELECT CURDATE() +0;\n \n+--------------+\n| CURDATE() +0 |\n+--------------+\n| 20190305 |\n+--------------+\n \nData calculation:\n \nSELECT CURDATE() - INTERVAL 5 DAY;\n \n+----------------------------+\n| CURDATE() - INTERVAL 5 DAY |\n+----------------------------+\n| 2019-02-28 |\n+----------------------------+ +description=Returns the current date as a value in 'YYYY-MM-DD' or YYYYMMDD format,\ndepending on whether the function is used in a string or numeric\ncontext.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[CURRENT_DATE] +declaration= +category=Date and Time Functions +description=CURRENT_DATE and CURRENT_DATE() are synonyms for CURDATE().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[CURRENT_TIME] +declaration=[fsp] +category=Date and Time Functions +description=CURRENT_TIME and CURRENT_TIME() are synonyms for CURTIME().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[CURRENT_TIMESTAMP] +declaration=[fsp] +category=Date and Time Functions +description=CURRENT_TIMESTAMP and CURRENT_TIMESTAMP() are synonyms for NOW().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[CURRENT_USER] +declaration= +category=Information Functions +description=Returns the user name and host name combination for the MySQL account\nthat the server used to authenticate the current client. This account\ndetermines your access privileges. The return value is a string in the\nutf8 character set.\n\nThe value of CURRENT_USER() can differ from the value of USER().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [CURTIME] declaration=[fsp] category=Date and Time Functions -description=Returns the current time as a value in 'hh:mm:ss' or hhmmss format,\ndepending on whether the function is used in string or numeric context +description=Returns the current time as a value in 'HH:MM:SS' or HHMMSS format,\ndepending on whether the function is used in a string or numeric\ncontext. The value is expressed in the current time zone.\n\nIf the fsp argument is given to specify a fractional seconds precision\nfrom 0 to 6, the return value includes a fractional seconds part of\nthat many digits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[DATABASE] +declaration= +category=Information Functions +description=Returns the default (current) database name as a string in the utf8\ncharacter set. If there is no default database, DATABASE() returns\nNULL. Within a stored routine, the default database is the database\nthat the routine is associated with, which is not necessarily the same\nas the database that is the default in the calling context.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [DATEDIFF] declaration=expr1,expr2 category=Date and Time Functions -description=DATEDIFF() returns expr1 - expr2 expressed as a value in days from one\ndate to the other +description=DATEDIFF() returns expr1 - expr2 expressed as a value in days from one\ndate to the other. expr1 and expr2 are date or date-and-time\nexpressions. Only the date parts of the values are used in the\ncalculation.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[DATETIME] +declaration=fsp +category=Data Types +description=A date and time combination. The supported range is '1000-01-01\n00:00:00.000000' to '9999-12-31 23:59:59.999999'. MySQL displays\nDATETIME values in 'YYYY-MM-DD HH:MM:SS[.fraction]' format, but permits\nassignment of values to DATETIME columns using either strings or\nnumbers.\n\nAn optional fsp value in the range from 0 to 6 may be given to specify\nfractional seconds precision. A value of 0 signifies that there is no\nfractional part. If omitted, the default precision is 0.\n\nAutomatic initialization and updating to the current date and time for\nDATETIME columns can be specified using DEFAULT and ON UPDATE column\ndefinition clauses, as described in\nhttp://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-type-overview.html [DATE_ADD] declaration=date,INTERVAL expr unit category=Date and Time Functions -description=These functions perform date arithmetic +description=These functions perform date arithmetic. The date argument specifies\nthe starting date or datetime value. expr is an expression specifying\nthe interval value to be added or subtracted from the starting date.\nexpr is a string; it may start with a "-" for negative intervals. unit\nis a keyword indicating the units in which the expression should be\ninterpreted.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DATE_FORMAT] declaration=date,format category=Date and Time Functions -description=Formats the date value according to the format string +description=Formats the date value according to the format string.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DATE_SUB] declaration=date,INTERVAL expr unit category=Date and Time Functions -description=See the description for DATE_ADD() +description=See the description for DATE_ADD().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DAY] declaration=date category=Date and Time Functions -description=DAY() is a synonym for DAYOFMONTH() +description=DAY() is a synonym for DAYOFMONTH().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DAYNAME] declaration=date category=Date and Time Functions -description=Returns the name of the weekday for date +description=Returns the name of the weekday for date. The language used for the\nname is controlled by the value of the lc_time_names system variable\n(http://dev.mysql.com/doc/refman/5.7/en/locale-support.html).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DAYOFMONTH] declaration=date category=Date and Time Functions -description=Returns the day of the month for date, in the range 1 to 31, or 0 for dates\nsuch as '0000-00-00' or '2008-00-00' that have a zero day part +description=Returns the day of the month for date, in the range 1 to 31, or 0 for\ndates such as '0000-00-00' or '2008-00-00' that have a zero day part.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DAYOFWEEK] declaration=date category=Date and Time Functions -description=Returns the weekday index for date (1 = Sunday, 2 = Monday, +description=Returns the weekday index for date (1 = Sunday, 2 = Monday, ..., 7 =\nSaturday). These index values correspond to the ODBC standard.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [DAYOFYEAR] declaration=date category=Date and Time Functions -description=Returns the day of the year for date, in the range 1 to 366 +description=Returns the day of the year for date, in the range 1 to 366.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[DEC] +declaration=M[,D] +category=Data Types +description=[ZEROFILL], FIXED[(M[,D])] [UNSIGNED] [ZEROFILL]\n\nThese types are synonyms for DECIMAL. The FIXED synonym is available\nfor compatibility with other database systems.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html +[DECIMAL] +declaration=M[,D] +category=Data Types +description=A packed "exact" fixed-point number. M is the total number of digits\n(the precision) and D is the number of digits after the decimal point\n(the scale). The decimal point and (for negative numbers) the "-" sign\nare not counted in M. If D is 0, values have no decimal point or\nfractional part. The maximum number of digits (M) for DECIMAL is 65.\nThe maximum number of supported decimals (D) is 30. If D is omitted,\nthe default is 0. If M is omitted, the default is 10.\n\nUNSIGNED, if specified, disallows negative values.\n\nAll basic calculations (+, -, *, /) with DECIMAL columns are done with\na precision of 65 digits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html +[DECODE] +declaration=crypt_str,pass_str +category=Encryption Functions +description=DECODE() decrypts the encrypted string crypt_str using pass_str as the\npassword. crypt_str should be a string returned from ENCODE().\n\n*Note*: The ENCODE() and DECODE() functions are deprecated in MySQL\n5.7, will be removed in a future MySQL release, and should no longer be\nused. Consider using AES_ENCRYPT() and AES_DECRYPT() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [DEFAULT] declaration=col_name category=Miscellaneous Functions -description=Returns the default value for a table column +description=Returns the default value for a table column. An error results if the\ncolumn has no default value.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [DEGREES] declaration=X category=Numeric Functions -description=Returns the argument X, converted from radians to degrees +description=Returns the argument X, converted from radians to degrees.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[DES_DECRYPT] +declaration=crypt_str[,key_str] +category=Encryption Functions +description=Decrypts a string encrypted with DES_ENCRYPT(). If an error occurs,\nthis function returns NULL.\n\nThis function works only if MySQL has been configured with SSL support.\nSee http://dev.mysql.com/doc/refman/5.7/en/ssl-connections.html.\n\nIf no key_str argument is given, DES_DECRYPT() examines the first byte\nof the encrypted string to determine the DES key number that was used\nto encrypt the original string, and then reads the key from the DES key\nfile to decrypt the message. For this to work, the user must have the\nSUPER privilege. The key file can be specified with the --des-key-file\nserver option.\n\nIf you pass this function a key_str argument, that string is used as\nthe key for decrypting the message.\n\nIf the crypt_str argument does not appear to be an encrypted string,\nMySQL returns the given crypt_str.\n\n*Note*: The DES_ENCRYPT() and DES_DECRYPT() functions are deprecated as\nof MySQL 5.7.6, will be removed in a future MySQL release, and should\nno longer be used. Consider using AES_ENCRYPT() and AES_DECRYPT()\ninstead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[DES_ENCRYPT] +declaration=str[,{key_num|key_str}] +category=Encryption Functions +description=Encrypts the string with the given key using the Triple-DES algorithm.\n\nThis function works only if MySQL has been configured with SSL support.\nSee http://dev.mysql.com/doc/refman/5.7/en/ssl-connections.html.\n\nThe encryption key to use is chosen based on the second argument to\nDES_ENCRYPT(), if one was given. With no argument, the first key from\nthe DES key file is used. With a key_num argument, the given key number\n(0 to 9) from the DES key file is used. With a key_str argument, the\ngiven key string is used to encrypt str.\n\nThe key file can be specified with the --des-key-file server option.\n\nThe return string is a binary string where the first character is\nCHAR(128 | key_num). If an error occurs, DES_ENCRYPT() returns NULL.\n\nThe 128 is added to make it easier to recognize an encrypted key. If\nyou use a string key, key_num is 127.\n\nThe string length for the result is given by this formula:\n\nnew_len = orig_len + (8 - (orig_len % 8)) + 1\n\nEach line in the DES key file has the following format:\n\nkey_num des_key_str\n\nEach key_num value must be a number in the range from 0 to 9. Lines in\nthe file may be in any order. des_key_str is the string that is used to\nencrypt the message. There should be at least one space between the\nnumber and the key. The first key is the default key that is used if\nyou do not specify any key argument to DES_ENCRYPT().\n\nYou can tell MySQL to read new key values from the key file with the\nFLUSH DES_KEY_FILE statement. This requires the RELOAD privilege.\n\nOne benefit of having a set of default keys is that it gives\napplications a way to check for the existence of encrypted column\nvalues, without giving the end user the right to decrypt those values.\n\n*Note*: The DES_ENCRYPT() and DES_DECRYPT() functions are deprecated as\nof MySQL 5.7.6, will be removed in a future MySQL release, and should\nno longer be used. Consider using AES_ENCRYPT() and AES_DECRYPT()\ninstead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[DIMENSION] +declaration=g +category=Geometry properties +description=Returns the inherent dimension of the geometry value g. The result can\nbe -1, 0, 1, or 2. The meaning of these values is given in\nhttp://dev.mysql.com/doc/refman/5.7/en/gis-class-geometry.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html +[DISJOINT] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially disjoint from (does\nnot intersect) g2.\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBRDisjoint() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html +[DISTANCE] +declaration=g1,g2 +category=Geometry relations +description=ST_Distance() and Distance() are synonyms. For more information, see\nthe description of ST_Distance().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html +[DOUBLE] +declaration=M,D +category=Data Types +description=A normal-size (double-precision) floating-point number. Permissible\nvalues are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and\n2.2250738585072014E-308 to 1.7976931348623157E+308. These are the\ntheoretical limits, based on the IEEE standard. The actual range might\nbe slightly smaller depending on your hardware or operating system.\n\nM is the total number of digits and D is the number of digits following\nthe decimal point. If M and D are omitted, values are stored to the\nlimits permitted by the hardware. A double-precision floating-point\nnumber is accurate to approximately 15 decimal places.\n\nUNSIGNED, if specified, disallows negative values.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [ELT] declaration=N,str1,str2,str3,... category=String Functions -description=ELT() returns the Nth element of the list of strings: str1 if N = 1, str2\nif N = 2, and so on +description=ELT() returns the Nth element of the list of strings: str1 if N = 1,\nstr2 if N = 2, and so on. Returns NULL if N is less than 1 or greater\nthan the number of arguments. ELT() is the complement of FIELD().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[ENCODE] +declaration=str,pass_str +category=Encryption Functions +description=ENCODE() encrypts str using pass_str as the password. The result is a\nbinary string of the same length as str. To decrypt the result, use\nDECODE().\n\n*Note*: The ENCODE() and DECODE() functions are deprecated in MySQL\n5.7, will be removed in a future MySQL release, and should no longer be\nused.\n\nIf you still need to use ENCODE(), a salt value must be used with it to\nreduce risk. For example:\n\nENCODE('plaintext', CONCAT('my_random_salt','my_secret_password'))\n\nA new random salt value must be used whenever a password is updated.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[ENCRYPT] +declaration=str[,salt] +category=Encryption Functions +description=Encrypts str using the Unix crypt() system call and returns a binary\nstring. The salt argument must be a string with at least two characters\nor the result will be NULL. If no salt argument is given, a random\nvalue is used.\n\n*Note*: The ENCRYPT() function is deprecated as of MySQL 5.7.6, will be\nremoved in a future MySQL release, and should no longer be used.\nConsider using AES_ENCRYPT() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[ENDPOINT] +declaration=ls +category=LineString properties +description=Returns the Point that is the endpoint of the LineString value ls.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html [ENUM] declaration='value1','value2',... category=Data Types -description=collation_name] An enumeration +description=collation_name]\n\nAn enumeration. A string object that can have only one value, chosen\nfrom the list of values 'value1', 'value2', ..., NULL or the special ''\nerror value. ENUM values are represented internally as integers.\n\nAn ENUM column can have a maximum of 65,535 distinct elements. (The\npractical limit is less than 3000.) A table can have no more than 255\nunique element list definitions among its ENUM and SET columns\nconsidered as a group. For more information on these limits, see\nhttp://dev.mysql.com/doc/refman/5.7/en/limits-frm-file.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html +[ENVELOPE] +declaration=g +category=Geometry properties +description=ST_Envelope() and Envelope() are synonyms. For more information, see\nthe description of ST_Envelope().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html +[EQUALS] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially equal to g2.\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBREquals() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html [EXP] declaration=X category=Numeric Functions -description=Returns the value of e (the base of natural logarithms) raised to the power\nof X +description=Returns the value of e (the base of natural logarithms) raised to the\npower of X. The inverse of this function is LOG() (using a single\nargument only) or LN().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [EXPORT_SET] declaration=bits,on,off[,separator[,number_of_bits]] category=String Functions -description=Returns a string such that for every bit set in the value bits, you get an\non string and for every bit not set in the value, you get an off string +description=Returns a string such that for every bit set in the value bits, you get\nan on string and for every bit not set in the value, you get an off\nstring. Bits in bits are examined from right to left (from low-order to\nhigh-order bits). Strings are added to the result from left to right,\nseparated by the separator string (the default being the comma\ncharacter ","). The number of bits examined is given by number_of_bits,\nwhich has a default of 64 if not specified. number_of_bits is silently\nclipped to 64 if larger than 64. It is treated as an unsigned integer,\nso a value of -1 is effectively the same as 64.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[EXTERIORRING] +declaration=poly +category=Polygon properties +description=Returns the exterior ring of the Polygon value poly as a LineString.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html [EXTRACT] declaration=unit FROM date category=Date and Time Functions -description=The EXTRACT() function uses the same kinds of unit specifiers as DATE_ADD()\nor DATE_SUB(), but extracts parts from the date rather than performing date\narithmetic +description=The EXTRACT() function uses the same kinds of unit specifiers as\nDATE_ADD() or DATE_SUB(), but extracts parts from the date rather than\nperforming date arithmetic.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [EXTRACTVALUE] declaration=xml_frag, xpath_expr -category=XML -description=ExtractValue() takes two string arguments, a fragment of XML markup\nxml_frag and an XPath expression xpath_expr (also known as a locator); it\nreturns the text (CDATA) of the first text node which is a child of the\nelement or elements matched by the XPath expression +category=String Functions +description=ExtractValue() takes two string arguments, a fragment of XML markup\nxml_frag and an XPath expression xpath_expr (also known as a locator);\nit returns the text (CDATA) of the first text node which is a child of\nthe elements or elements matched by the XPath expression.\n\nUsing this function is the equivalent of performing a match using the\nxpath_expr after appending /text(). In other words,\nExtractValue('Sakila', '/a/b') and\nExtractValue('Sakila', '/a/b/text()') produce the same\nresult.\n\nIf multiple matches are found, the content of the first child text node\nof each matching element is returned (in the order matched) as a\nsingle, space-delimited string.\n\nIf no matching text node is found for the expression (including the\nimplicit /text())---for whatever reason, as long as xpath_expr is\nvalid, and xml_frag consists of elements which are properly nested and\nclosed---an empty string is returned. No distinction is made between a\nmatch on an empty element and no match at all. This is by design.\n\nIf you need to determine whether no matching element was found in\nxml_frag or such an element was found but contained no child text\nnodes, you should test the result of an expression that uses the XPath\ncount() function. For example, both of these statements return an empty\nstring, as shown here:\n\nmysql> SELECT ExtractValue('', '/a/b');\n+-------------------------------------+\n| ExtractValue('', '/a/b') |\n+-------------------------------------+\n| |\n+-------------------------------------+\n1 row in set (0.00 sec)\n\nmysql> SELECT ExtractValue('', '/a/b');\n+-------------------------------------+\n| ExtractValue('', '/a/b') |\n+-------------------------------------+\n| |\n+-------------------------------------+\n1 row in set (0.00 sec)\n\nHowever, you can determine whether there was actually a matching\nelement using the following:\n\nmysql> SELECT ExtractValue('', 'count(/a/b)');\n+-------------------------------------+\n| ExtractValue('', 'count(/a/b)') |\n+-------------------------------------+\n ... [FIELD] declaration=str,str1,str2,str3,... category=String Functions -description=Returns the index (position) of str in the str1, str2, str3, +description=Returns the index (position) of str in the str1, str2, str3, ... list.\nReturns 0 if str is not found.\n\nIf all arguments to FIELD() are strings, all arguments are compared as\nstrings. If all arguments are numbers, they are compared as numbers.\nOtherwise, the arguments are compared as double.\n\nIf str is NULL, the return value is 0 because NULL fails equality\ncomparison with any value. FIELD() is the complement of ELT().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [FIND_IN_SET] declaration=str,strlist category=String Functions -description=Returns a value in the range of 1 to N if the string str is in the string\nlist strlist consisting of N substrings -[FIRST_VALUE] -declaration=expr -category=Window Functions -description=Returns the value of expr from the first row of the window frame +description=Returns a value in the range of 1 to N if the string str is in the\nstring list strlist consisting of N substrings. A string list is a\nstring composed of substrings separated by "," characters. If the first\nargument is a constant string and the second is a column of type SET,\nthe FIND_IN_SET() function is optimized to use bit arithmetic. Returns\n0 if str is not in strlist or if strlist is the empty string. Returns\nNULL if either argument is NULL. This function does not work properly\nif the first argument contains a comma (",") character.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[FLOAT] +declaration=M,D +category=Data Types +description=A small (single-precision) floating-point number. Permissible values\nare -3.402823466E+38 to -1.175494351E-38, 0, and 1.175494351E-38 to\n3.402823466E+38. These are the theoretical limits, based on the IEEE\nstandard. The actual range might be slightly smaller depending on your\nhardware or operating system.\n\nM is the total number of digits and D is the number of digits following\nthe decimal point. If M and D are omitted, values are stored to the\nlimits permitted by the hardware. A single-precision floating-point\nnumber is accurate to approximately 7 decimal places.\n\nUNSIGNED, if specified, disallows negative values.\n\nUsing FLOAT might give you some unexpected problems because all\ncalculations in MySQL are done with double precision. See\nhttp://dev.mysql.com/doc/refman/5.7/en/no-matching-rows.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [FLOOR] declaration=X category=Numeric Functions -description=Returns the largest integer value not greater than X +description=Returns the largest integer value not greater than X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [FORMAT] declaration=X,D[,locale] category=String Functions -description=Formats the number X to a format like '#,###,### -[FORMAT_BYTES] -declaration=count -category=Performance Schema Functions -description=Given a numeric byte count, converts it to human-readable format and\nreturns a string consisting of a value and a units indicator -[FORMAT_PICO_TIME] -declaration=time_val -category=Performance Schema Functions -description=Given a numeric Performance Schema latency or wait time in picoseconds,\nconverts it to human-readable format and returns a string consisting of a\nvalue and a units indicator -[FROM_BASE64] -declaration=str -category=String Functions -description=Takes a string encoded with the base-64 encoded rules used by TO_BASE64()\nand returns the decoded result as a binary string +description=Formats the number X to a format like '#,###,###.##', rounded to D\ndecimal places, and returns the result as a string. If D is 0, the\nresult has no decimal point or fractional part.\n\nThe optional third parameter enables a locale to be specified to be\nused for the result number's decimal point, thousands separator, and\ngrouping between separators. Permissible locale values are the same as\nthe legal values for the lc_time_names system variable (see\nhttp://dev.mysql.com/doc/refman/5.7/en/locale-support.html). If no\nlocale is specified, the default is 'en_US'.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[FOUND_ROWS] +declaration= +category=Information Functions +description=A SELECT statement may include a LIMIT clause to restrict the number of\nrows the server returns to the client. In some cases, it is desirable\nto know how many rows the statement would have returned without the\nLIMIT, but without running the statement again. To obtain this row\ncount, include a SQL_CALC_FOUND_ROWS option in the SELECT statement,\nand then invoke FOUND_ROWS() afterward:\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [FROM_DAYS] declaration=N category=Date and Time Functions -description=Given a day number N, returns a DATE value +description=Given a day number N, returns a DATE value.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [FROM_UNIXTIME] -declaration=unix_timestamp[,format] +declaration=unix_timestamp category=Date and Time Functions -description=Returns a representation of the unix_timestamp argument as a value in\n'YYYY-MM-DD hh:mm:ss' or YYYYMMDDhhmmss format, depending on whether the\nfunction is used in a string or numeric context -[GEOMCOLLECTION] -declaration=g [, g] ... -category=Geometry Constructors -description=Constructs a GeomCollection value from the geometry arguments +description=Returns a representation of the unix_timestamp argument as a value in\n'YYYY-MM-DD HH:MM:SS' or YYYYMMDDHHMMSS format, depending on whether\nthe function is used in a string or numeric context. The value is\nexpressed in the current time zone. unix_timestamp is an internal\ntimestamp value such as is produced by the UNIX_TIMESTAMP() function.\n\nIf format is given, the result is formatted according to the format\nstring, which is used the same way as listed in the entry for the\nDATE_FORMAT() function.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[GEOMCOLLFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a GeometryCollection value using its WKT representation and\nSRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[GEOMCOLLFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a GeometryCollection value using its WKB representation and\nSRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [GEOMETRYCOLLECTION] -declaration=g [, g] ... -category=Geometry Constructors -description=Constructs a GeomCollection value from the geometry arguments +declaration=g1,g2,... +category=Geometry constructors +description=Constructs a GeometryCollection.\n\nAs of MySQL 5.7.5, GeometryCollection() returns all the proper\ngeometries contained in the argument even if a nonsupported geometry is\npresent. Before 5.7.5, if the argument contains a nonsupported\ngeometry, the return value is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html +[GEOMETRYN] +declaration=gc,N +category=GeometryCollection properties +description=Returns the N-th geometry in the GeometryCollection value gc.\nGeometries are numbered beginning with 1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-geometrycollection-property-functions.html +[GEOMETRYTYPE] +declaration=g +category=Geometry properties +description=Returns a binary string indicating the name of the geometry type of\nwhich the geometry instance g is a member. The name corresponds to one\nof the instantiable Geometry subclasses.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html +[GEOMFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a geometry value of any type using its WKT representation\nand SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[GEOMFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a geometry value of any type using its WKB representation\nand SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [GET_FORMAT] declaration={DATE|TIME|DATETIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'} category=Date and Time Functions -description=Returns a format string +description=Returns a format string. This function is useful in combination with\nthe DATE_FORMAT() and the STR_TO_DATE() functions.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [GET_LOCK] declaration=str,timeout -category=Locking Functions -description=Tries to obtain a lock with a name given by the string str, using a timeout\nof timeout seconds +category=Miscellaneous Functions +description=Tries to obtain a lock with a name given by the string str, using a\ntimeout of timeout seconds. A negative timeout value means infinite\ntimeout.\n\nReturns 1 if the lock was obtained successfully, 0 if the attempt timed\nout (for example, because another client has previously locked the\nname), or NULL if an error occurred (such as running out of memory or\nthe thread was killed with mysqladmin kill). If you have a lock\nobtained with GET_LOCK(), it is released when you execute\nRELEASE_LOCK() or your connection terminates (either normally or\nabnormally). Lock release may also occur with another call to\nGET_LOCK():\n\no Before 5.7.5, only a single simultaneous lock can be acquired and\n GET_LOCK() releases any existing lock.\n\no In MySQL 5.7.5, GET_LOCK() was reimplemented using the metadata\n locking (MDL) subsystem and its capabilities were extended. Multiple\n simultaneous locks can be acquired and GET_LOCK() does not release\n any existing locks. It is even possible for a given session to\n acquire multiple locks for the same name. Other sessions cannot\n acquire a lock with that name until the acquiring session releases\n all its locks for the name.\n\n As a result of the MDL reimplementation, locks acquired with\n GET_LOCK() appear in the Performance Schema metadata_locks table. The\n OBJECT_TYPE column says USER LEVEL LOCK and the OBJECT_NAME column\n indicates the lock name. Also, the capability of acquiring multiple\n locks introduces the possibility of deadlock among clients. An\n ER_USER_LOCK_DEADLOCK error is returned when this occurs.\n\nThe difference in lock acquisition behavior as of MySQL 5.7.5 can be\nseen by the following example. Suppose that you execute these\nstatements:\n\nSELECT GET_LOCK('lock1',10);\nSELECT GET_LOCK('lock2',10);\nSELECT RELEASE_LOCK('lock2');\nSELECT RELEASE_LOCK('lock1');\n\nIn MySQL 5.7.5 or later, the second GET_LOCK() acquires a second lock\nand both RELEASE_LOCK() calls return 1 (success). Before MySQL 5.7.5,\nthe second GET_LOCK() releases the first lock ('lock1') and the second\nRELEASE_LOCK() returns NULL (failure) because there is no 'lock1' to\nrelease.\n\nMySQL 5.7.5 and later enforces a maximum length on lock names of 64\ncharacters. Previously, no limit was enforced.\n\nLocks obtained with GET_LOCK() do not interact with transactions. That\n ... +[GLENGTH] +declaration=ls +category=LineString properties +description=Returns a double-precision number indicating the length of the\nLineString value ls in its associated spatial reference.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html [GREATEST] declaration=value1,value2,... -category=Comparison Operators -description=With two or more arguments, returns the largest (maximum-valued) argument -[GROUPING] -declaration=expr [, expr] ... -category=Miscellaneous Functions -description=For GROUP BY queries that include a WITH ROLLUP modifier, the ROLLUP\noperation produces super-aggregate output rows where NULL represents the\nset of all values +category=Comparison operators +description=With two or more arguments, returns the largest (maximum-valued)\nargument. The arguments are compared using the same rules as for\nLEAST().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html [GROUP_CONCAT] declaration=expr -category=Aggregate Functions and Modifiers -description=This function returns a string result with the concatenated non-NULL values\nfrom a group +category=Functions and Modifiers for Use with GROUP BY +description=This function returns a string result with the concatenated non-NULL\nvalues from a group. It returns NULL if there are no non-NULL values.\nThe full syntax is as follows:\n\nGROUP_CONCAT([DISTINCT] expr [,expr ...]\n [ORDER BY {unsigned_integer | col_name | expr}\n [ASC | DESC] [,col_name ...]]\n [SEPARATOR str_val])\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [GTID_SUBSET] -declaration=set1,set2 -category=GTID -description=Given two sets of global transaction identifiers set1 and set2, returns\ntrue if all GTIDs in set1 are also in set2 +declaration=subset,set +category=MBR +description=Given two sets of global transaction IDs subset and set, returns true\nif all GTIDs in subset are also in set. Returns false otherwise.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gtid-functions.html [GTID_SUBTRACT] -declaration=set1,set2 -category=GTID -description=Given two sets of global transaction identifiers set1 and set2, returns\nonly those GTIDs from set1 that are not in set2 +declaration=set,subset +category=MBR +description=Given two sets of global transaction IDs subset and set, returns only\nthose GTIDs from set that are not in subset.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gtid-functions.html [HEX] declaration=str category=String Functions -description=For a string argument str, HEX() returns a hexadecimal string\nrepresentation of str where each byte of each character in str is converted\nto two hexadecimal digits +description=For a string argument str, HEX() returns a hexadecimal string\nrepresentation of str where each byte of each character in str is\nconverted to two hexadecimal digits. (Multibyte characters therefore\nbecome more than two digits.) The inverse of this operation is\nperformed by the UNHEX() function.\n\nFor a numeric argument N, HEX() returns a hexadecimal string\nrepresentation of the value of N treated as a longlong (BIGINT) number.\nThis is equivalent to CONV(N,10,16). The inverse of this operation is\nperformed by CONV(HEX(N),16,10).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [HOUR] declaration=time category=Date and Time Functions -description=Returns the hour for time +description=Returns the hour for time. The range of the return value is 0 to 23 for\ntime-of-day values. However, the range of TIME values actually is much\nlarger, so HOUR can return values greater than 23.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [IFNULL] declaration=expr1,expr2 -category=Flow Control Functions -description=If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns expr2 +category=Control flow functions +description=If expr1 is not NULL, IFNULL() returns expr1; otherwise it returns\nexpr2. IFNULL() returns a numeric or string value, depending on the\ncontext in which it is used.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/control-flow-functions.html +[IN] +declaration=value,... +category=Comparison operators +description=Returns 1 if expr is equal to any of the values in the IN list, else\nreturns 0. If all values are constants, they are evaluated according to\nthe type of expr and sorted. The search for the item then is done using\na binary search. This means IN is very quick if the IN value list\nconsists entirely of constants. Otherwise, type conversion takes place\naccording to the rules described in\nhttp://dev.mysql.com/doc/refman/5.7/en/type-conversion.html, but\napplied to all the arguments.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html [INET6_ATON] declaration=expr category=Miscellaneous Functions -description=Given an IPv6 or IPv4 network address as a string, returns a binary string\nthat represents the numeric value of the address in network byte order (big\nendian) +description=Given an IPv6 or IPv4 network address as a string, returns a binary\nstring that represents the numeric value of the address in network byte\norder (big endian). Because numeric-format IPv6 addresses require more\nbytes than the largest integer type, the representation returned by\nthis function has the VARBINARY data type: VARBINARY(16) for IPv6\naddresses and VARBINARY(4) for IPv4 addresses. If the argument is not a\nvalid address, INET6_ATON() returns NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [INET6_NTOA] declaration=expr category=Miscellaneous Functions -description=Given an IPv6 or IPv4 network address represented in numeric form as a\nbinary string, returns the string representation of the address as a string\nin the connection character set +description=Given an IPv6 or IPv4 network address represented in numeric form as a\nbinary string, returns the string representation of the address as a\nnonbinary string in the connection character set. If the argument is\nnot a valid address, INET6_NTOA() returns NULL.\n\nINET6_NTOA() has these properties:\n\no It does not use operating system functions to perform conversions,\n thus the output string is platform independent.\n\no The return string has a maximum length of 39 (4 x 8 + 7). Given this\n statement:\n\nCREATE TABLE t AS SELECT INET6_NTOA(expr) AS c1;\n\n The resulting table would have this definition:\n\nCREATE TABLE t (c1 VARCHAR(39) CHARACTER SET utf8 DEFAULT NULL);\n\no The return string uses lowercase letters for IPv6 addresses.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [INET_ATON] declaration=expr category=Miscellaneous Functions -description=Given the dotted-quad representation of an IPv4 network address as a\nstring, returns an integer that represents the numeric value of the address\nin network byte order (big endian) +description=Given the dotted-quad representation of an IPv4 network address as a\nstring, returns an integer that represents the numeric value of the\naddress in network byte order (big endian). INET_ATON() returns NULL if\nit does not understand its argument.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [INET_NTOA] declaration=expr category=Miscellaneous Functions -description=Given a numeric IPv4 network address in network byte order, returns the\ndotted-quad string representation of the address as a string in the\nconnection character set +description=Given a numeric IPv4 network address in network byte order, returns the\ndotted-quad string representation of the address as a nonbinary string\nin the connection character set. INET_NTOA() returns NULL if it does\nnot understand its argument.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [INSTR] declaration=str,substr category=String Functions -description=Returns the position of the first occurrence of substring substr in string\nstr +description=Returns the position of the first occurrence of substring substr in\nstring str. This is the same as the two-argument form of LOCATE(),\nexcept that the order of the arguments is reversed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[INT] +declaration=M +category=Data Types +description=A normal-size integer. The signed range is -2147483648 to 2147483647.\nThe unsigned range is 0 to 4294967295.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html +[INTEGER] +declaration=M +category=Data Types +description=This type is a synonym for INT.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html +[INTERIORRINGN] +declaration=poly,N +category=Polygon properties +description=Returns the N-th interior ring for the Polygon value poly as a\nLineString. Rings are numbered beginning with 1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html +[INTERSECTS] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially intersects g2.\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBRIntersects() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html [INTERVAL] declaration=N,N1,N2,N3,... -category=Comparison Operators -description=Returns 0 if N < N1, 1 if N < N2 and so on or -1 if N is NULL +category=Comparison operators +description=Returns 0 if N < N1, 1 if N < N2 and so on or -1 if N is NULL. All\narguments are treated as integers. It is required that N1 < N2 < N3 <\n... < Nn for this function to work correctly. This is because a binary\nsearch is used (very fast).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html +[ISCLOSED] +declaration=ls +category=LineString properties +description=Returns 1 if the LineString value ls is closed (that is, its\nStartPoint() and EndPoint() values are the same) and is simple (does\nnot pass through the same point more than once). Returns 0 if ls is not\nclosed, and -1 if it is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html +[ISEMPTY] +declaration=g +category=Geometry properties +description=This function is a placeholder that returns 0 for any valid geometry\nvalue, 1 for any invalid geometry value or NULL.\n\nMySQL does not support GIS EMPTY values such as POINT EMPTY.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html [ISNULL] declaration=expr -category=Comparison Operators -description=If expr is NULL, ISNULL() returns 1, otherwise it returns 0 +category=Comparison operators +description=If expr is NULL, ISNULL() returns 1, otherwise it returns 0.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html +[ISSIMPLE] +declaration=g +category=Geometry properties +description=Returns 1 if the geometry value g has no anomalous geometric points,\nsuch as self-intersection or self-tangency. IsSimple() returns 0 if the\nargument is not simple, and NULL if it is NULL.\n\nThe description of each instantiable geometric class given earlier in\nthe chapter includes the specific conditions that cause an instance of\nthat class to be classified as not simple. (See [HELP Geometry\nhierarchy].)\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html [IS_FREE_LOCK] declaration=str -category=Locking Functions -description=Checks whether the lock named str is free to use (that is, not locked) +category=Miscellaneous Functions +description=Checks whether the lock named str is free to use (that is, not locked).\nReturns 1 if the lock is free (no one is using the lock), 0 if the lock\nis in use, and NULL if an error occurs (such as an incorrect argument).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [IS_IPV4] declaration=expr category=Miscellaneous Functions -description=Returns 1 if the argument is a valid IPv4 address specified as a string, 0\notherwise +description=Returns 1 if the argument is a valid IPv4 address specified as a\nstring, 0 otherwise.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [IS_IPV4_COMPAT] declaration=expr category=Miscellaneous Functions -description=This function takes an IPv6 address represented in numeric form as a binary\nstring, as returned by INET6_ATON() +description=This function takes an IPv6 address represented in numeric form as a\nbinary string, as returned by INET6_ATON(). It returns 1 if the\nargument is a valid IPv4-compatible IPv6 address, 0 otherwise.\nIPv4-compatible addresses have the form ::ipv4_address.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [IS_IPV4_MAPPED] declaration=expr category=Miscellaneous Functions -description=This function takes an IPv6 address represented in numeric form as a binary\nstring, as returned by INET6_ATON() +description=This function takes an IPv6 address represented in numeric form as a\nbinary string, as returned by INET6_ATON(). It returns 1 if the\nargument is a valid IPv4-mapped IPv6 address, 0 otherwise. IPv4-mapped\naddresses have the form ::ffff:ipv4_address.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [IS_IPV6] declaration=expr category=Miscellaneous Functions -description=Returns 1 if the argument is a valid IPv6 address specified as a string, 0\notherwise +description=Returns 1 if the argument is a valid IPv6 address specified as a\nstring, 0 otherwise. This function does not consider IPv4 addresses to\nbe valid IPv6 addresses.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [IS_USED_LOCK] declaration=str -category=Locking Functions -description=Checks whether the lock named str is in use (that is, locked) -[IS_UUID] -declaration=string_uuid category=Miscellaneous Functions -description=Returns 1 if the argument is a valid string-format UUID, 0 if the argument\nis not a valid UUID, and NULL if the argument is NULL -[JSON_ARRAY] -declaration=[val[, val] ...] -category=MBR Functions -description=Evaluates a (possibly empty) list of values and returns a JSON array\ncontaining those values -[JSON_ARRAYAGG] -declaration=col_or_expr -category=Aggregate Functions and Modifiers -description=Aggregates a result set as a single JSON array whose elements consist of\nthe rows -[JSON_ARRAY_APPEND] -declaration=json_doc, path, val[, path, val] ... -category=MBR Functions -description=Appends values to the end of the indicated arrays within a JSON document\nand returns the result -[JSON_ARRAY_INSERT] -declaration=json_doc, path, val[, path, val] ... -category=MBR Functions -description=Updates a JSON document, inserting into an array within the document and\nreturning the modified document -[JSON_CONTAINS] -declaration=target, candidate[, path] -category=MBR Functions -description=Indicates by returning 1 or 0 whether a given candidate JSON document is\ncontained within a target JSON document, or---if a path argument was\nsupplied---whether the candidate is found at a specific path within the\ntarget -[JSON_CONTAINS_PATH] -declaration=json_doc, one_or_all, path[, path] ... -category=MBR Functions -description=Returns 0 or 1 to indicate whether a JSON document contains data at a given\npath or paths -[JSON_DEPTH] -declaration=json_doc -category=MBR Functions -description=Returns the maximum depth of a JSON document -[JSON_EXTRACT] -declaration=json_doc, path[, path] ... -category=MBR Functions -description=Returns data from a JSON document, selected from the parts of the document\nmatched by the path arguments -[JSON_INSERT] -declaration=json_doc, path, val[, path, val] ... -category=MBR Functions -description=Inserts data into a JSON document and returns the result -[JSON_KEYS] -declaration=json_doc[, path] -category=MBR Functions -description=Returns the keys from the top-level value of a JSON object as a JSON array,\nor, if a path argument is given, the top-level keys from the selected path -[JSON_LENGTH] -declaration=json_doc[, path] -category=MBR Functions -description=Returns the length of a JSON document, or, if a path argument is given, the\nlength of the value within the document identified by the path -[JSON_MERGE] -declaration=json_doc, json_doc[, json_doc] ... -category=MBR Functions -description=Merges two or more JSON documents -[JSON_OBJECT] -declaration=[key, val[, key, val] ...] -category=MBR Functions -description=Evaluates a (possibly empty) list of key-value pairs and returns a JSON\nobject containing those pairs -[JSON_OBJECTAGG] -declaration=key, value -category=Aggregate Functions and Modifiers -description=Takes two column names or expressions as arguments, the first of these\nbeing used as a key and the second as a value, and returns a JSON object\ncontaining key-value pairs -[JSON_OVERLAPS] -declaration=json_doc1, json_doc2 -category=MBR Functions -description=Compares two JSON documents -[JSON_PRETTY] -declaration=json_val -category=MBR Functions -description=Provides pretty-printing of JSON values similar to that implemented in PHP\nand by other languages and database systems -[JSON_QUOTE] -declaration=string -category=MBR Functions -description=Quotes a string as a JSON value by wrapping it with double quote characters\nand escaping interior quote and other characters, then returning the result\nas a utf8mb4 string -[JSON_REMOVE] -declaration=json_doc, path[, path] ... -category=MBR Functions -description=Removes data from a JSON document and returns the result -[JSON_REPLACE] -declaration=json_doc, path, val[, path, val] ... -category=MBR Functions -description=Replaces existing values in a JSON document and returns the result -[JSON_SCHEMA_VALID] -declaration=schema,document -category=MBR Functions -description=Validates a JSON document against a JSON schema -[JSON_SCHEMA_VALIDATION_REPORT] -declaration=schema,document -category=MBR Functions -description=Validates a JSON document against a JSON schema -[JSON_SEARCH] -declaration=json_doc, one_or_all, search_str[, escape_char[, path] ...] -category=MBR Functions -description=Returns the path to the given string within a JSON document -[JSON_SET] -declaration=json_doc, path, val[, path, val] ... -category=MBR Functions -description=Inserts or updates data in a JSON document and returns the result -[JSON_STORAGE_FREE] -declaration=json_val -category=MBR Functions -description=For a JSON column value, this function shows how much storage space was\nfreed in its binary representation after it was updated in place using\nJSON_SET(), JSON_REPLACE(), or JSON_REMOVE() -[JSON_STORAGE_SIZE] -declaration=json_val -category=MBR Functions -description=This function returns the number of bytes used to store the binary\nrepresentation of a JSON document -[JSON_TABLE] -declaration=expr, path COLUMNS (column_list -category=MBR Functions -description=Extracts data from a JSON document and returns it as a relational table\nhaving the specified columns -[JSON_TYPE] -declaration=json_val -category=MBR Functions -description=Returns a utf8mb4 string indicating the type of a JSON value -[JSON_UNQUOTE] -declaration=json_val -category=MBR Functions -description=Unquotes JSON value and returns the result as a utf8mb4 string -[JSON_VALID] -declaration=val -category=MBR Functions -description=Returns 0 or 1 to indicate whether a value is valid JSON -[JSON_VALUE] -declaration=json_doc, path -category=MBR Functions -description=Extracts a value from a JSON document at the path given in the specified\ndocument, and returns the extracted value, optionally converting it to a\ndesired type -[LAG] -declaration=expr [, N[, default]] -category=Window Functions -description=Returns the value of expr from the row that lags (precedes) the current row\nby N rows within its partition +description=Checks whether the lock named str is in use (that is, locked). If so,\nit returns the connection identifier of the client that holds the lock.\nOtherwise, it returns NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html +[JOIN] +declaration=t2, t3, t4 +category=Data Manipulation +description=ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n\nis equivalent to:\n\nSELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4)\n ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c)\n\nIn MySQL, JOIN, CROSS JOIN, and INNER JOIN are syntactic equivalents\n(they can replace each other). In standard SQL, they are not\nequivalent. INNER JOIN is used with an ON clause, CROSS JOIN is used\notherwise.\n\nIn general, parentheses can be ignored in join expressions containing\nonly inner join operations. MySQL also supports nested joins (see\nhttp://dev.mysql.com/doc/refman/5.7/en/nested-join-optimization.html).\n\nIndex hints can be specified to affect how the MySQL optimizer makes\nuse of indexes. For more information, see\nhttp://dev.mysql.com/doc/refman/5.7/en/index-hints.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/join.html [LAST_DAY] declaration=date category=Date and Time Functions -description=Takes a date or datetime value and returns the corresponding value for the\nlast day of the month -[LAST_VALUE] -declaration=expr -category=Window Functions -description=Returns the value of expr from the last row of the window frame +description=Takes a date or datetime value and returns the corresponding value for\nthe last day of the month. Returns NULL if the argument is invalid.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[LAST_INSERT_ID] +declaration= +category=Information Functions +description=With no argument, LAST_INSERT_ID() returns a BIGINT UNSIGNED (64-bit)\nvalue representing the first automatically generated value successfully\ninserted for an AUTO_INCREMENT column as a result of the most recently\nexecuted INSERT statement. The value of LAST_INSERT_ID() remains\nunchanged if no rows are successfully inserted.\n\nWith an argument, LAST_INSERT_ID() returns an unsigned integer.\n\nFor example, after inserting a row that generates an AUTO_INCREMENT\nvalue, you can get the value like this:\n\nmysql> SELECT LAST_INSERT_ID();\n -> 195\n\nThe currently executing statement does not affect the value of\nLAST_INSERT_ID(). Suppose that you generate an AUTO_INCREMENT value\nwith one statement, and then refer to LAST_INSERT_ID() in a\nmultiple-row INSERT statement that inserts rows into a table with its\nown AUTO_INCREMENT column. The value of LAST_INSERT_ID() will remain\nstable in the second statement; its value for the second and later rows\nis not affected by the earlier row insertions. (However, if you mix\nreferences to LAST_INSERT_ID() and LAST_INSERT_ID(expr), the effect is\nundefined.)\n\nIf the previous statement returned an error, the value of\nLAST_INSERT_ID() is undefined. For transactional tables, if the\nstatement is rolled back due to an error, the value of LAST_INSERT_ID()\nis left undefined. For manual ROLLBACK, the value of LAST_INSERT_ID()\nis not restored to that before the transaction; it remains as it was at\nthe point of the ROLLBACK.\n\nPrior to MySQL 5.7.3, this function was not replicated correctly if\nreplication filtering rules were in use. (Bug #17234370, Bug #69861)\n\nWithin the body of a stored routine (procedure or function) or a\ntrigger, the value of LAST_INSERT_ID() changes the same way as for\nstatements executed outside the body of these kinds of objects. The\neffect of a stored routine or trigger upon the value of\nLAST_INSERT_ID() that is seen by following statements depends on the\nkind of routine:\n\no If a stored procedure executes statements that change the value of\n LAST_INSERT_ID(), the changed value is seen by statements that follow\n the procedure call.\n\no For stored functions and triggers that change the value, the value is\n restored when the function or trigger ends, so following statements\n will not see a changed value.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [LCASE] declaration=str category=String Functions -description=LCASE() is a synonym for LOWER() -[LEAD] -declaration=expr [, N[, default]] -category=Window Functions -description=Returns the value of expr from the row that leads (follows) the current row\nby N rows within its partition +description=LCASE() is a synonym for LOWER().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [LEAST] declaration=value1,value2,... -category=Comparison Operators -description=With two or more arguments, returns the smallest (minimum-valued) argument +category=Comparison operators +description=With two or more arguments, returns the smallest (minimum-valued)\nargument. The arguments are compared using the following rules:\n\no If any argument is NULL, the result is NULL. No comparison is needed.\n\no If the return value is used in an INTEGER context or all arguments\n are integer-valued, they are compared as integers.\n\no If the return value is used in a REAL context or all arguments are\n real-valued, they are compared as reals.\n\no If the arguments comprise a mix of numbers and strings, they are\n compared as numbers.\n\no If any argument is a nonbinary (character) string, the arguments are\n compared as nonbinary strings.\n\no In all other cases, the arguments are compared as binary strings.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/comparison-operators.html [LEFT] declaration=str,len category=String Functions -description=Returns the leftmost len characters from the string str, or NULL if any\nargument is NULL +description=Returns the leftmost len characters from the string str, or NULL if any\nargument is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [LENGTH] declaration=str category=String Functions -description=Returns the length of the string str, measured in bytes +description=Returns the length of the string str, measured in bytes. A multibyte\ncharacter counts as multiple bytes. This means that for a string\ncontaining five 2-byte characters, LENGTH() returns 10, whereas\nCHAR_LENGTH() returns 5.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[LINEFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a LineString value using its WKT representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[LINEFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a LineString value using its WKB representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [LINESTRING] -declaration=pt [, pt] ... -category=Geometry Constructors -description=Constructs a LineString value from a number of Point or WKB Point arguments +declaration=pt1,pt2,... +category=Geometry constructors +description=Constructs a LineString value from a number of Point or WKB Point\narguments. If the number of arguments is less than two, the return\nvalue is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html [LN] declaration=X category=Numeric Functions -description=Returns the natural logarithm of X; that is, the base-e logarithm of X +description=Returns the natural logarithm of X; that is, the base-e logarithm of X.\nAs of MySQL 5.7.4, if X is less than or equal to 0.0E0, the error\n"Invalid argument for logarithm" is reported in strict SQL mode, and\nNULL is returned in non-strict mode. Before MySQL 5.7.4, if X is less\nthan or equal to 0.0E0, NULL is returned.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [LOAD_FILE] declaration=file_name category=String Functions -description=Reads the file and returns the file contents as a string +description=Reads the file and returns the file contents as a string. To use this\nfunction, the file must be located on the server host, you must specify\nthe full path name to the file, and you must have the FILE privilege.\nThe file must be readable by all and its size less than\nmax_allowed_packet bytes. If the secure_file_priv system variable is\nset to a nonempty directory name, the file to be loaded must be located\nin that directory.\n\nIf the file does not exist or cannot be read because one of the\npreceding conditions is not satisfied, the function returns NULL.\n\nThe character_set_filesystem system variable controls interpretation of\nfile names that are given as literal strings.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[LOCALTIME] +declaration=[fsp] +category=Date and Time Functions +description=LOCALTIME and LOCALTIME() are synonyms for NOW().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[LOCALTIMESTAMP] +declaration=[fsp] +category=Date and Time Functions +description=LOCALTIMESTAMP and LOCALTIMESTAMP() are synonyms for NOW().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [LOCATE] declaration=substr,str category=String Functions -description=The first syntax returns the position of the first occurrence of substring\nsubstr in string str +description=The first syntax returns the position of the first occurrence of\nsubstring substr in string str. The second syntax returns the position\nof the first occurrence of substring substr in string str, starting at\nposition pos. Returns 0 if substr is not in str.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [LOG] declaration=X category=Numeric Functions -description=If called with one parameter, this function returns the natural logarithm\nof X +description=If called with one parameter, this function returns the natural\nlogarithm of X. As of MySQL 5.7.4, if X is less than or equal to 0.0E0,\nthe error "Invalid argument for logarithm" is reported in strict SQL\nmode, and NULL is returned in non-strict mode. Before MySQL 5.7.4, if X\nis less than or equal to 0.0E0, NULL is returned.\n\nThe inverse of this function (when called with a single argument) is\nthe EXP() function.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [LOG10] declaration=X category=Numeric Functions -description=Returns the base-10 logarithm of X +description=Returns the base-10 logarithm of X. As of MySQL 5.7.4, if X is less\nthan or equal to 0.0E0, the error "Invalid argument for logarithm" is\nreported in strict SQL mode, and NULL is returned in non-strict mode.\nBefore MySQL 5.7.4, if X is less than or equal to 0.0E0, NULL is\nreturned.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [LOG2] declaration=X category=Numeric Functions -description=Returns the base-2 logarithm of X +description=Returns the base-2 logarithm of X. As of MySQL 5.7.4, if X is less than\nor equal to 0.0E0, the error "Invalid argument for logarithm" is\nreported in strict SQL mode, and NULL is returned in non-strict mode.\nBefore MySQL 5.7.4, if X is less than or equal to 0.0E0, NULL is\nreturned.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [LOWER] declaration=str category=String Functions -description=Returns the string str with all characters changed to lowercase according\nto the current character set mapping +description=Returns the string str with all characters changed to lowercase\naccording to the current character set mapping. The default is latin1\n(cp1252 West European).\n\nmysql> SELECT LOWER('QUADRATICALLY');\n -> 'quadratically'\n\nLOWER() (and UPPER()) are ineffective when applied to binary strings\n(BINARY, VARBINARY, BLOB). To perform lettercase conversion, convert\nthe string to a nonbinary string:\n\nmysql> SET @str = BINARY 'New York';\nmysql> SELECT LOWER(@str), LOWER(CONVERT(@str USING latin1));\n+-------------+-----------------------------------+\n| LOWER(@str) | LOWER(CONVERT(@str USING latin1)) |\n+-------------+-----------------------------------+\n| New York | new york |\n+-------------+-----------------------------------+\n\nFor Unicode character sets, LOWER() and UPPER() work accounting to\nUnicode Collation Algorithm (UCA) 5.2.0 for xxx_unicode_520_ci\ncollations and for language-specific collations that are derived from\nthem. For other Unicode collations, LOWER() and UPPER() work accounting\nto Unicode Collation Algorithm (UCA) 4.0.0. See\nhttp://dev.mysql.com/doc/refman/5.7/en/charset-unicode-sets.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [LPAD] declaration=str,len,padstr category=String Functions -description=Returns the string str, left-padded with the string padstr to a length of\nlen characters +description=Returns the string str, left-padded with the string padstr to a length\nof len characters. If str is longer than len, the return value is\nshortened to len characters.\n\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [LTRIM] declaration=str category=String Functions -description=Returns the string str with leading space characters removed +description=Returns the string str with leading space characters removed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [MAKEDATE] declaration=year,dayofyear category=Date and Time Functions -description=Returns a date, given year and day-of-year values +description=Returns a date, given year and day-of-year values. dayofyear must be\ngreater than 0 or the result is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [MAKETIME] declaration=hour,minute,second category=Date and Time Functions -description=Returns a time value calculated from the hour, minute, and second arguments +description=Returns a time value calculated from the hour, minute, and second\narguments.\n\nThe second argument can have a fractional part.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [MAKE_SET] declaration=bits,str1,str2,... category=String Functions -description=Returns a set value (a string containing substrings separated by ,\ncharacters) consisting of the strings that have the corresponding bit in\nbits set +description=Returns a set value (a string containing substrings separated by ","\ncharacters) consisting of the strings that have the corresponding bit\nin bits set. str1 corresponds to bit 0, str2 to bit 1, and so on. NULL\nvalues in str1, str2, ... are not appended to the result.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [MASTER_POS_WAIT] -declaration=log_name,log_pos[,timeout][,channel] +declaration=log_name,log_pos[,timeout] category=Miscellaneous Functions -description=This function is useful for control of source/replica synchronization +description=This function is useful for control of master/slave synchronization. It\nblocks until the slave has read and applied all updates up to the\nspecified position in the master log. The return value is the number of\nlog events the slave had to wait for to advance to the specified\nposition. The function returns NULL if the slave SQL thread is not\nstarted, the slave's master information is not initialized, the\narguments are incorrect, or an error occurs. It returns -1 if the\ntimeout has been exceeded. If the slave SQL thread stops while\nMASTER_POS_WAIT() is waiting, the function returns NULL. If the slave\nis past the specified position, the function returns immediately.\n\nIf a timeout value is specified, MASTER_POS_WAIT() stops waiting when\ntimeout seconds have elapsed. timeout must be greater than 0; a zero or\nnegative timeout means no timeout.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [MAX] declaration=[DISTINCT] expr -category=Aggregate Functions and Modifiers -description=Returns the maximum value of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the maximum value of expr. MAX() may take a string argument; in\nsuch cases, it returns the maximum string value. See\nhttp://dev.mysql.com/doc/refman/5.7/en/mysql-indexes.html. The DISTINCT\nkeyword can be used to find the maximum of the distinct values of expr,\nhowever, this produces the same result as omitting DISTINCT.\n\nMAX() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [MBRCONTAINS] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\ncontains the minimum bounding rectangle of g2 +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\ncontains the minimum bounding rectangle of g2. This tests the opposite\nrelationship as MBRWithin().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRCOVEREDBY] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1 is\ncovered by the minimum bounding rectangle of g2 +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\nis covered by the minimum bounding rectangle of g2. This tests the\nopposite relationship as MBRCovers().\n\nMBRCoveredBy() and MBRCovers() handle their arguments and return a\nvalue as follows:\n\no Return NULL if either argument is NULL or an empty geometry\n\no Return ER_GIS_INVALID_DATA if either argument is not a valid geometry\n byte string (SRID plus WKB value)\n\no Otherwise, return non-NULL\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRCOVERS] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\ncovers the minimum bounding rectangle of g2 +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\ncovers the minimum bounding rectangle of g2. This tests the opposite\nrelationship as MBRCoveredBy(). See the description of MBRCoveredBy()\nfor examples and information about argument handling.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRDISJOINT] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of the\ntwo geometries g1 and g2 are disjoint (do not intersect) +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 are disjoint (do not intersect).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html +[MBREQUAL] +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 are the same.\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBREquals() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBREQUALS] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of the\ntwo geometries g1 and g2 are the same +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 are the same.\n\nThis function was added in MySQL 5.7.6. It should be used in preference\nto MBREqual().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRINTERSECTS] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of the\ntwo geometries g1 and g2 intersect +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 intersect.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBROVERLAPS] -declaration=g1, g2 -category=MBR Functions -description=Two geometries spatially overlap if they intersect and their intersection\nresults in a geometry of the same dimension but not equal to either of the\ngiven geometries +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 overlap. The term spatially overlaps is\nused if two geometries intersect and their intersection results in a\ngeometry of the same dimension but not equal to either of the given\ngeometries.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRTOUCHES] -declaration=g1, g2 -category=MBR Functions -description=Two geometries spatially touch if their interiors do not intersect, but the\nboundary of one of the geometries intersects either the boundary or the\ninterior of the other +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangles of\nthe two geometries g1 and g2 touch. Two geometries spatially touch if\nthe interiors of the geometries do not intersect, but the boundary of\none of the geometries intersects either the boundary or the interior of\nthe other.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MBRWITHIN] -declaration=g1, g2 -category=MBR Functions -description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1 is\nwithin the minimum bounding rectangle of g2 +declaration=g1,g2 +category=MBR +description=Returns 1 or 0 to indicate whether the minimum bounding rectangle of g1\nis within the minimum bounding rectangle of g2. This tests the opposite\nrelationship as MBRContains().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mysql-specific.html [MD5] declaration=str category=Encryption Functions -description=Calculates an MD5 128-bit checksum for the string +description=Calculates an MD5 128-bit checksum for the string. The value is\nreturned as a string of 32 hex digits, or NULL if the argument was\nNULL. The return value can, for example, be used as a hash key. See the\nnotes at the beginning of this section about storing hash values\nefficiently.\n\nThe return value is a nonbinary string in the connection character set.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[MEDIUMINT] +declaration=M +category=Data Types +description=A medium-sized integer. The signed range is -8388608 to 8388607. The\nunsigned range is 0 to 16777215.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [MICROSECOND] declaration=expr category=Date and Time Functions -description=Returns the microseconds from the time or datetime expression expr as a\nnumber in the range from 0 to 999999 +description=Returns the microseconds from the time or datetime expression expr as a\nnumber in the range from 0 to 999999.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [MID] declaration=str,pos,len category=String Functions -description=MID(str,pos,len) is a synonym for SUBSTRING(str,pos,len) +description=MID(str,pos,len) is a synonym for SUBSTRING(str,pos,len).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [MIN] declaration=[DISTINCT] expr -category=Aggregate Functions and Modifiers -description=Returns the minimum value of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the minimum value of expr. MIN() may take a string argument; in\nsuch cases, it returns the minimum string value. See\nhttp://dev.mysql.com/doc/refman/5.7/en/mysql-indexes.html. The DISTINCT\nkeyword can be used to find the minimum of the distinct values of expr,\nhowever, this produces the same result as omitting DISTINCT.\n\nMIN() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [MINUTE] declaration=time category=Date and Time Functions -description=Returns the minute for time, in the range 0 to 59 +description=Returns the minute for time, in the range 0 to 59.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[MLINEFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a MultiLineString value using its WKT representation and\nSRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[MLINEFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a MultiLineString value using its WKB representation and\nSRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [MOD] declaration=N,M category=Numeric Functions -description=Modulo operation +description=Modulo operation. Returns the remainder of N divided by M.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [MONTH] declaration=date category=Date and Time Functions -description=Returns the month for date, in the range 1 to 12 for January to December,\nor 0 for dates such as '0000-00-00' or '2008-00-00' that have a zero month\npart +description=Returns the month for date, in the range 1 to 12 for January to\nDecember, or 0 for dates such as '0000-00-00' or '2008-00-00' that have\na zero month part.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [MONTHNAME] declaration=date category=Date and Time Functions -description=Returns the full name of the month for date +description=Returns the full name of the month for date. The language used for the\nname is controlled by the value of the lc_time_names system variable\n(http://dev.mysql.com/doc/refman/5.7/en/locale-support.html).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[MPOINTFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a MultiPoint value using its WKT representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[MPOINTFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a MultiPoint value using its WKB representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html +[MPOLYFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a MultiPolygon value using its WKT representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[MPOLYFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a MultiPolygon value using its WKB representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [MULTILINESTRING] -declaration=ls [, ls] ... -category=Geometry Constructors -description=Constructs a MultiLineString value using LineString or WKB LineString\narguments +declaration=ls1,ls2,... +category=Geometry constructors +description=Constructs a MultiLineString value using LineString or WKB LineString\narguments.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html [MULTIPOINT] -declaration=pt [, pt2] ... -category=Geometry Constructors -description=Constructs a MultiPoint value using Point or WKB Point arguments +declaration=pt1,pt2,... +category=Geometry constructors +description=Constructs a MultiPoint value using Point or WKB Point arguments.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html [MULTIPOLYGON] -declaration=poly [, poly] ... -category=Geometry Constructors -description=Constructs a MultiPolygon value from a set of Polygon or WKB Polygon\narguments +declaration=poly1,poly2,... +category=Geometry constructors +description=Constructs a MultiPolygon value from a set of Polygon or WKB Polygon\narguments.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html [NAME_CONST] declaration=name,value category=Miscellaneous Functions -description=Returns the given value +description=Returns the given value. When used to produce a result set column,\nNAME_CONST() causes the column to have the given name. The arguments\nshould be constants.\n\nmysql> SELECT NAME_CONST('myname', 14);\n+--------+\n| myname |\n+--------+\n| 14 |\n+--------+\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [NOW] declaration=[fsp] category=Date and Time Functions -description=Returns the current date and time as a value in 'YYYY-MM-DD hh:mm:ss' or\nYYYYMMDDhhmmss format, depending on whether the function is used in string\nor numeric context -[NTH_VALUE] -declaration=expr, N -category=Window Functions -description=Returns the value of expr from the N-th row of the window frame -[NTILE] -declaration=N -category=Window Functions -description=Divides a partition into N groups (buckets), assigns each row in the\npartition its bucket number, and returns the bucket number of the current\nrow within its partition +description=Returns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context. The value is expressed in the current time\nzone.\n\nIf the fsp argument is given to specify a fractional seconds precision\nfrom 0 to 6, the return value includes a fractional seconds part of\nthat many digits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [NULLIF] declaration=expr1,expr2 -category=Flow Control Functions -description=Returns NULL if expr1 = expr2 is true, otherwise returns expr1 +category=Control flow functions +description=Returns NULL if expr1 = expr2 is true, otherwise returns expr1. This is\nthe same as CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/control-flow-functions.html +[NUMGEOMETRIES] +declaration=gc +category=GeometryCollection properties +description=Returns the number of geometries in the GeometryCollection value gc.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-geometrycollection-property-functions.html +[NUMINTERIORRINGS] +declaration=poly +category=Polygon properties +description=Returns the number of interior rings in the Polygon value poly.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html +[NUMPOINTS] +declaration=ls +category=LineString properties +description=Returns the number of Point objects in the LineString value ls.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html [OCT] declaration=N category=String Functions -description=Returns a string representation of the octal value of N, where N is a\nlonglong (BIGINT) number +description=Returns a string representation of the octal value of N, where N is a\nlonglong (BIGINT) number. This is equivalent to CONV(N,10,8). Returns\nNULL if N is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [OCTET_LENGTH] declaration=str category=String Functions -description=OCTET_LENGTH() is a synonym for LENGTH() +description=OCTET_LENGTH() is a synonym for LENGTH().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[OLD_PASSWORD] +declaration=str +category=Encryption Functions +description=OLD_PASSWORD() was added when the implementation of PASSWORD() was\nchanged in MySQL 4.1 to improve security. OLD_PASSWORD() returns the\nvalue of the pre-4.1 implementation of PASSWORD() as a string, and is\nintended to permit you to reset passwords for any pre-4.1 clients that\nneed to connect to your version 5.7 MySQL server without locking them\nout. See http://dev.mysql.com/doc/refman/5.7/en/password-hashing.html.\n\nThe return value is a nonbinary string in the connection character set.\n\n*Note*: Passwords that use the pre-4.1 hashing method are less secure\nthan passwords that use the native password hashing method and should\nbe avoided. Pre-4.1 passwords are deprecated and support for them is\nremoved in MySQL 5.7.5. Consequently, OLD_PASSWORD() is deprecated and\nis removed in MySQL 5.7.5.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [ORD] declaration=str category=String Functions -description=If the leftmost character of the string str is a multibyte character,\nreturns the code for that character, calculated from the numeric values of\nits constituent bytes using this formula: (1st byte code) + (2nd byte\ncode * 256) + (3rd byte code * 256^2) +description=If the leftmost character of the string str is a multibyte character,\nreturns the code for that character, calculated from the numeric values\nof its constituent bytes using this formula:\n\n (1st byte code)\n+ (2nd byte code * 256)\n+ (3rd byte code * 2562) ...\n\nIf the leftmost character is not a multibyte character, ORD() returns\nthe same value as the ASCII() function.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[OVERLAPS] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially overlaps g2. The term\nspatially overlaps is used if two geometries intersect and their\nintersection results in a geometry of the same dimension but not equal\nto either of the given geometries.\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBROverlaps() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html +[PASSWORD] +declaration=str +category=Encryption Functions +description=*Note*: This function is deprecated as of MySQL 5.7.6 and will be\nremoved in a future MySQL release.\n\nReturns a hashed password string calculated from the cleartext password\nstr. The return value is a nonbinary string in the connection character\nset, or NULL if the argument is NULL. This function is the SQL\ninterface to the algorithm used by the server to encrypt MySQL\npasswords for storage in the mysql.user grant table.\n\nThe old_passwords system variable controls the password hashing method\nused by the PASSWORD() function. It also influences password hashing\nperformed by CREATE USER and GRANT statements that specify a password\nusing an IDENTIFIED BY clause.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [PERIOD_ADD] declaration=P,N category=Date and Time Functions -description=Adds N months to period P (in the format YYMM or YYYYMM) +description=Adds N months to period P (in the format YYMM or YYYYMM). Returns a\nvalue in the format YYYYMM. Note that the period argument P is not a\ndate value.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [PERIOD_DIFF] declaration=P1,P2 category=Date and Time Functions -description=Returns the number of months between periods P1 and P2 +description=Returns the number of months between periods P1 and P2. P1 and P2\nshould be in the format YYMM or YYYYMM. Note that the period arguments\nP1 and P2 are not date values.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[PI] +declaration= +category=Numeric Functions +description=Returns the value of ? (pi). The default number of decimal places\ndisplayed is seven, but MySQL uses the full double-precision value\ninternally.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [POINT] -declaration=x, y -category=Geometry Constructors -description=Constructs a Point using its coordinates +declaration=x,y +category=Geometry constructors +description=Constructs a Point using its coordinates.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html +[POINTFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a Point value using its WKT representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[POINTFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a Point value using its WKB representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html +[POINTN] +declaration=ls,N +category=LineString properties +description=Returns the N-th Point in the Linestring value ls. Points are numbered\nbeginning with 1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html +[POLYFROMTEXT] +declaration=wkt[,srid] +category=WKT +description=Constructs a Polygon value using its WKT representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html +[POLYFROMWKB] +declaration=wkb[,srid] +category=WKB +description=Constructs a Polygon value using its WKB representation and SRID.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-wkb-functions.html [POLYGON] -declaration=ls [, ls] ... -category=Geometry Constructors -description=Constructs a Polygon value from a number of LineString or WKB LineString\narguments +declaration=ls1,ls2,... +category=Geometry constructors +description=Constructs a Polygon value from a number of LineString or WKB\nLineString arguments. If any argument does not represent a LinearRing\n(that is, not a closed and simple LineString), the return value is\nNULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-mysql-specific-functions.html [POSITION] declaration=substr IN str category=String Functions -description=POSITION(substr IN str) is a synonym for LOCATE(substr,str) +description=POSITION(substr IN str) is a synonym for LOCATE(substr,str).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [POW] declaration=X,Y category=Numeric Functions -description=Returns the value of X raised to the power of Y +description=Returns the value of X raised to the power of Y.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [POWER] declaration=X,Y category=Numeric Functions -description=This is a synonym for POW() -[PS_THREAD_ID] -declaration=connection_id -category=Performance Schema Functions -description=Given a connection ID, returns a BIGINT UNSIGNED value representing the\nPerformance Schema thread ID assigned to the connection ID, or NULL if no\nthread ID exists for the connection ID +description=This is a synonym for POW().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [QUARTER] declaration=date category=Date and Time Functions -description=Returns the quarter of the year for date, in the range 1 to 4 +description=Returns the quarter of the year for date, in the range 1 to 4.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [QUOTE] declaration=str category=String Functions -description=Quotes a string to produce a result that can be used as a properly escaped\ndata value in an SQL statement +description=Quotes a string to produce a result that can be used as a properly\nescaped data value in an SQL statement. The string is returned enclosed\nby single quotation marks and with each instance of backslash ("\"),\nsingle quote ("'"), ASCII NUL, and Control+Z preceded by a backslash.\nIf the argument is NULL, the return value is the word "NULL" without\nenclosing single quotation marks.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [RADIANS] declaration=X category=Numeric Functions -description=Returns the argument X, converted from degrees to radians +description=Returns the argument X, converted from degrees to radians. (Note that\n? radians equals 180 degrees.)\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [RAND] -declaration=[N] +declaration= category=Numeric Functions -description=Returns a random floating-point value v in the range 0 <= v < 1 +description=Returns a random floating-point value v in the range 0 <= v < 1.0. If a\nconstant integer argument N is specified, it is used as the seed value,\nwhich produces a repeatable sequence of column values. In the following\nexample, note that the sequences of values produced by RAND(3) is the\nsame both places where it occurs.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [RANDOM_BYTES] declaration=len category=Encryption Functions -description=This function returns a binary string of len random bytes generated using\nthe random number generator of the SSL library -[REGEXP_INSTR] -declaration=expr, pat[, pos[, occurrence[, return_option[, -match_type]]]] -category=String Functions -description=Returns the starting index of the substring of the string expr that matches\nthe regular expression specified by the pattern pat, 0 if there is no match -[REGEXP_LIKE] -declaration=expr, pat[, match_type] -category=String Functions -description=Returns 1 if the string expr matches the regular expression specified by\nthe pattern pat, 0 otherwise -[REGEXP_REPLACE] -declaration=expr, pat, repl[, pos[, occurrence[, match_type]]] -category=String Functions -description=Replaces occurrences in the string expr that match the regular expression\nspecified by the pattern pat with the replacement string repl, and returns\nthe resulting string -[REGEXP_SUBSTR] -declaration=expr, pat[, pos[, occurrence[, match_type]]] -category=String Functions -description=Returns the substring of the string expr that matches the regular\nexpression specified by the pattern pat, NULL if there is no match +description=This function returns a binary string of len random bytes generated\nusing the random number generator of the SSL library (OpenSSL or\nyaSSL). Permitted values of len range from 1 to 1024. For values\noutside that range, RANDOM_BYTES() generates a warning and returns\nNULL.\n\nRANDOM_BYTES() can be used to provide the initialization vector for the\nAES_DECRYPT() and AES_ENCRYPT() functions. For use in that context, len\nmust be at least 16. Larger values are permitted, but bytes in excess\nof 16 are ignored.\n\nRANDOM_BYTES() generates a random value, which makes its result\nnondeterministic. Consequently, statements that use this function are\nunsafe for statement-based replication and cannot be stored in the\nquery cache.\n\nThis function is available as of MySQL 5.7.4.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html +[RELEASE_ALL_LOCKS] +declaration= +category=Miscellaneous Functions +description=Releases all named locks held by the current session and returns the\nnumber of locks released (0 if there were none)\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [RELEASE_LOCK] declaration=str -category=Locking Functions -description=Releases the lock named by the string str that was obtained with GET_LOCK() +category=Miscellaneous Functions +description=Releases the lock named by the string str that was obtained with\nGET_LOCK(). Returns 1 if the lock was released, 0 if the lock was not\nestablished by this thread (in which case the lock is not released),\nand NULL if the named lock did not exist. The lock does not exist if it\nwas never obtained by a call to GET_LOCK() or if it has previously been\nreleased.\n\nThe DO statement is convenient to use with RELEASE_LOCK(). See [HELP\nDO].\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [REVERSE] declaration=str category=String Functions -description=Returns the string str with the order of the characters reversed +description=Returns the string str with the order of the characters reversed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [RIGHT] declaration=str,len category=String Functions -description=Returns the rightmost len characters from the string str, or NULL if any\nargument is NULL +description=Returns the rightmost len characters from the string str, or NULL if\nany argument is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [ROUND] declaration=X category=Numeric Functions -description=Rounds the argument X to D decimal places +description=Rounds the argument X to D decimal places. The rounding algorithm\ndepends on the data type of X. D defaults to 0 if not specified. D can\nbe negative to cause D digits left of the decimal point of the value X\nto become zero.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[ROW_COUNT] +declaration= +category=Information Functions +description=In MySQL 5.7, ROW_COUNT() returns a value as follows:\n\no DDL statements: 0. This applies to statements such as CREATE TABLE or\n DROP TABLE.\n\no DML statements other than SELECT: The number of affected rows. This\n applies to statements such as UPDATE, INSERT, or DELETE (as before),\n but now also to statements such as ALTER TABLE and LOAD DATA INFILE.\n\no SELECT: -1 if the statement returns a result set, or the number of\n rows "affected" if it does not. For example, for SELECT * FROM t1,\n ROW_COUNT() returns -1. For SELECT * FROM t1 INTO OUTFILE\n 'file_name', ROW_COUNT() returns the number of rows written to the\n file.\n\no SIGNAL statements: 0.\n\nFor UPDATE statements, the affected-rows value by default is the number\nof rows actually changed. If you specify the CLIENT_FOUND_ROWS flag to\nmysql_real_connect() when connecting to mysqld, the affected-rows value\nis the number of rows "found"; that is, matched by the WHERE clause.\n\nFor REPLACE statements, the affected-rows value is 2 if the new row\nreplaced an old row, because in this case, one row was inserted after\nthe duplicate was deleted.\n\nFor INSERT ... ON DUPLICATE KEY UPDATE statements, the affected-rows\nvalue per row is 1 if the row is inserted as a new row, 2 if an\nexisting row is updated, and 0 if an existing row is set to its current\nvalues. If you specify the CLIENT_FOUND_ROWS flag, the affected-rows\nvalue is 1 (not 0) if an existing row is set to its current values.\n\nThe ROW_COUNT() value is similar to the value from the\nmysql_affected_rows() C API function and the row count that the mysql\nclient displays following statement execution.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [RPAD] declaration=str,len,padstr category=String Functions -description=Returns the string str, right-padded with the string padstr to a length of\nlen characters +description=Returns the string str, right-padded with the string padstr to a length\nof len characters. If str is longer than len, the return value is\nshortened to len characters.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [RTRIM] declaration=str category=String Functions -description=Returns the string str with trailing space characters removed +description=Returns the string str with trailing space characters removed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[SCHEMA] +declaration= +category=Information Functions +description=This function is a synonym for DATABASE().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [SECOND] declaration=time category=Date and Time Functions -description=Returns the second for time, in the range 0 to 59 +description=Returns the second for time, in the range 0 to 59.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [SEC_TO_TIME] declaration=seconds category=Date and Time Functions -description=Returns the seconds argument, converted to hours, minutes, and seconds, as\na TIME value +description=Returns the seconds argument, converted to hours, minutes, and seconds,\nas a TIME value. The range of the result is constrained to that of the\nTIME data type. A warning occurs if the argument corresponds to a value\noutside that range.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[SESSION_USER] +declaration= +category=Information Functions +description=SESSION_USER() is a synonym for USER().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [SHA1] declaration=str category=Encryption Functions -description=Calculates an SHA-1 160-bit checksum for the string, as described in RFC\n3174 (Secure Hash Algorithm) +description=Calculates an SHA-1 160-bit checksum for the string, as described in\nRFC 3174 (Secure Hash Algorithm). The value is returned as a string of\n40 hex digits, or NULL if the argument was NULL. One of the possible\nuses for this function is as a hash key. See the notes at the beginning\nof this section about storing hash values efficiently. You can also use\nSHA1() as a cryptographic function for storing passwords. SHA() is\nsynonymous with SHA1().\n\nThe return value is a nonbinary string in the connection character set.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [SHA2] declaration=str, hash_length category=Encryption Functions -description=Calculates the SHA-2 family of hash functions (SHA-224, SHA-256, SHA-384,\nand SHA-512) +description=Calculates the SHA-2 family of hash functions (SHA-224, SHA-256,\nSHA-384, and SHA-512). The first argument is the cleartext string to be\nhashed. The second argument indicates the desired bit length of the\nresult, which must have a value of 224, 256, 384, 512, or 0 (which is\nequivalent to 256). If either argument is NULL or the hash length is\nnot one of the permitted values, the return value is NULL. Otherwise,\nthe function result is a hash value containing the desired number of\nbits. See the notes at the beginning of this section about storing hash\nvalues efficiently.\n\nThe return value is a nonbinary string in the connection character set.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [SIGN] declaration=X category=Numeric Functions -description=Returns the sign of the argument as -1, 0, or 1, depending on whether X is\nnegative, zero, or positive +description=Returns the sign of the argument as -1, 0, or 1, depending on whether X\nis negative, zero, or positive.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [SIN] declaration=X category=Numeric Functions -description=Returns the sine of X, where X is given in radians +description=Returns the sine of X, where X is given in radians.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [SLEEP] declaration=duration category=Miscellaneous Functions -description=Sleeps (pauses) for the number of seconds given by the duration argument,\nthen returns 0 +description=Sleeps (pauses) for the number of seconds given by the duration\nargument, then returns 0. If SLEEP() is interrupted, it returns 1. The\nduration may have a fractional part. If the argument is NULL or\nnegative, SLEEP() produces a warning, or an error in strict SQL mode.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html +[SMALLINT] +declaration=M +category=Data Types +description=A small integer. The signed range is -32768 to 32767. The unsigned\nrange is 0 to 65535.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html [SOUNDEX] declaration=str category=String Functions -description=Returns a soundex string from str +description=Returns a soundex string from str. Two strings that sound almost the\nsame should have identical soundex strings. A standard soundex string\nis four characters long, but the SOUNDEX() function returns an\narbitrarily long string. You can use SUBSTRING() on the result to get a\nstandard soundex string. All nonalphabetic characters in str are\nignored. All international alphabetic characters outside the A-Z range\nare treated as vowels.\n\n*Important*: When using SOUNDEX(), you should be aware of the following\nlimitations:\n\no This function, as currently implemented, is intended to work well\n with strings that are in the English language only. Strings in other\n languages may not produce reliable results.\n\no This function is not guaranteed to provide consistent results with\n strings that use multibyte character sets, including utf-8.\n\n We hope to remove these limitations in a future release. See Bug\n #22638 for more information.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [SPACE] declaration=N category=String Functions -description=Returns a string consisting of N space characters +description=Returns a string consisting of N space characters.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [SQRT] declaration=X category=Numeric Functions -description=Returns the square root of a nonnegative number X -[STATEMENT_DIGEST] -declaration=statement -category=Encryption Functions -description=Given an SQL statement as a string, returns the statement digest hash value\nas a string in the connection character set, or NULL if the argument is\nNULL -[STATEMENT_DIGEST_TEXT] -declaration=statement -category=Encryption Functions -description=Given an SQL statement as a string, returns the normalized statement digest\nas a string in the connection character set, or NULL if the argument is\nNULL +description=Returns the square root of a nonnegative number X.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[SRID] +declaration=g +category=Geometry properties +description=Returns an integer indicating the Spatial Reference System ID for the\ngeometry value g.\n\nIn MySQL, the SRID value is just an integer associated with the\ngeometry value. All calculations are done assuming Euclidean (planar)\ngeometry.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html +[STARTPOINT] +declaration=ls +category=LineString properties +description=Returns the Point that is the start point of the LineString value ls.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html [STD] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the population standard deviation of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the population standard deviation of expr. This is an extension\nto standard SQL. The standard SQL function STDDEV_POP() can be used\ninstead.\n\nThis function returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [STDDEV] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the population standard deviation of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the population standard deviation of expr. This function is\nprovided for compatibility with Oracle. The standard SQL function\nSTDDEV_POP() can be used instead.\n\nThis function returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [STDDEV_POP] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the population standard deviation of expr (the square root of\nVAR_POP()) +category=Functions and Modifiers for Use with GROUP BY +description=Returns the population standard deviation of expr (the square root of\nVAR_POP()). You can also use STD() or STDDEV(), which are equivalent\nbut not standard SQL.\n\nSTDDEV_POP() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [STDDEV_SAMP] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the sample standard deviation of expr (the square root of\nVAR_SAMP() +category=Functions and Modifiers for Use with GROUP BY +description=Returns the sample standard deviation of expr (the square root of\nVAR_SAMP().\n\nSTDDEV_SAMP() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [STRCMP] declaration=expr1,expr2 category=String Functions -description=STRCMP() returns 0 if the strings are the same, -1 if the first argument is\nsmaller than the second according to the current sort order, and 1\notherwise +description=STRCMP() returns 0 if the strings are the same, -1 if the first\nargument is smaller than the second according to the current sort\norder, and 1 otherwise.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-comparison-functions.html [STR_TO_DATE] declaration=str,format category=Date and Time Functions -description=This is the inverse of the DATE_FORMAT() function +description=This is the inverse of the DATE_FORMAT() function. It takes a string\nstr and a format string format. STR_TO_DATE() returns a DATETIME value\nif the format string contains both date and time parts, or a DATE or\nTIME value if the string contains only date or time parts. If the date,\ntime, or datetime value extracted from str is illegal, STR_TO_DATE()\nreturns NULL and produces a warning.\n\nThe server scans str attempting to match format to it. The format\nstring can contain literal characters and format specifiers beginning\nwith %. Literal characters in format must match literally in str.\nFormat specifiers in format must match a date or time part in str. For\nthe specifiers that can be used in format, see the DATE_FORMAT()\nfunction description.\n\nmysql> SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y');\n -> '2013-05-01'\nmysql> SELECT STR_TO_DATE('May 1, 2013','%M %d,%Y');\n -> '2013-05-01'\n\nScanning starts at the beginning of str and fails if format is found\nnot to match. Extra characters at the end of str are ignored.\n\nmysql> SELECT STR_TO_DATE('a09:30:17','a%h:%i:%s');\n -> '09:30:17'\nmysql> SELECT STR_TO_DATE('a09:30:17','%h:%i:%s');\n -> NULL\nmysql> SELECT STR_TO_DATE('09:30:17a','%h:%i:%s');\n -> '09:30:17'\n\nUnspecified date or time parts have a value of 0, so incompletely\nspecified values in str produce a result with some or all parts set to\n0:\n\nmysql> SELECT STR_TO_DATE('abc','abc');\n -> '0000-00-00'\nmysql> SELECT STR_TO_DATE('9','%m');\n -> '0000-09-00'\nmysql> SELECT STR_TO_DATE('9','%s');\n -> '00:00:09'\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [ST_AREA] -declaration={poly|mpoly} -category=Polygon Property Functions -description=Returns a double-precision number indicating the area of the Polygon or\nMultiPolygon argument, as measured in its spatial reference system -[ST_ASBINARY] -declaration=g [, options] -category=WKB Functions -description=Converts a value in internal geometry format to its WKB representation and\nreturns the binary result +declaration=poly +category=Polygon properties +description=Returns a double-precision number indicating the area of the argument,\nas measured in its spatial reference system. For arguments of dimension\n0 or 1, the result is 0.\n\nAdditionally, as of MySQL 5.7.5: The result is the sum of the area\nvalues of all components for a geometry collection. If a geometry\ncollection is empty, its area is returned as 0.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html [ST_ASGEOJSON] declaration=g [, max_dec_digits [, options]] -category=MBR Functions -description=Generates a GeoJSON object from the geometry g -[ST_ASTEXT] -declaration=g [, options] -category=WKB Functions -description=Converts a value in internal geometry format to its WKT representation and\nreturns the string result -[ST_BUFFER] -declaration=g, d [, strategy1 [, strategy2 [, strategy3]]] -category=GeometryCollection Property Functions -description=Returns a geometry that represents all points whose distance from the\ngeometry value g is less than or equal to a distance of d -[ST_BUFFER_STRATEGY] -declaration=strategy [, points_per_circle] -category=GeometryCollection Property Functions -description=This function returns a strategy byte string for use with ST_Buffer() to\ninfluence buffer computation +category=MBR +description=Generates a GeoJSON object from the geometry g. The object string has\nthe connection character set and collation.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geojson-functions.html [ST_CENTROID] -declaration={poly|mpoly} -category=Polygon Property Functions -description=Returns the mathematical centroid for the Polygon or MultiPolygon argument\nas a Point -[ST_COLLECT] -declaration=[DISTINCT] g -category=MBR Functions -description=Aggregates geometry values and returns a single geometry collection value +declaration=mpoly +category=Polygon properties +description=Returns the mathematical centroid for the MultiPolygon value mpoly as a\nPoint. The result is not guaranteed to be on the MultiPolygon.\n\nAs of MySQL 5.7.5, this function processes geometry collections by\ncomputing the centroid point for components of highest dimension in the\ncollection. Such components are extracted and made into a single\nMultiPolygon, MultiLineString, or MultiPoint for centroid computation.\nIf the argument is an empty geometry collection, the return value is\nNULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-multipolygon-property-functions.html [ST_CONTAINS] -declaration=g1, g2 -category=Geometry Relation Functions -description=Returns 1 or 0 to indicate whether g1 completely contains g2 +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 completely contains g2. This\ntests the opposite relationship as ST_Within().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_CONVEXHULL] declaration=g -category=GeometryCollection Property Functions -description=Returns a geometry that represents the convex hull of the geometry value g +category=GeometryCollection properties +description=Returns a geometry that represents the convex hull of the geometry\nvalue g.\n\nThis function computes a geometry's convex hull by first checking\nwhether its vertex points are colinear. The function returns a linear\nhull if so, a polygon hull otherwise. This function processes geometry\ncollections by extracting all vertex points of all components of the\ncollection, creating a MultiPoint value from them, and computing its\nconvex hull. If the argument is an empty geometry collection, the\nreturn value is NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [ST_CROSSES] -declaration=g1, g2 -category=Geometry Relation Functions -description=Two geometries spatially cross if their spatial relation has the following\nproperties: o Unless g1 and g2 are both of dimension 1: g1 crosses g2 if\nthe interior of g2 has points in common with the interior of g1, but g2 \ndoes not cover the entire interior of g1 +declaration=g1,g2 +category=Geometry relations +description=Returns 1 if g1 spatially crosses g2. Returns NULL if g1 is a Polygon\nor a MultiPolygon, or if g2 is a Point or a MultiPoint. Otherwise,\nreturns 0.\n\nAs of MySQL 5.7.5, this function returns 0 if called with an\ninapplicable geometry argument type combination. For example, it\nreturns 0 if the first argument is a Polygon or MultiPolygon and/or the\nsecond argument is a Point or MultiPoint.\n\nThe term spatially crosses denotes a spatial relation between two given\ngeometries that has the following properties:\n\no The two geometries intersect\n\no Their intersection results in a geometry that has a dimension that is\n one less than the maximum dimension of the two given geometries\n\no Their intersection is not equal to either of the two given geometries\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_DIFFERENCE] declaration=g1, g2 -category=GeometryCollection Property Functions -description=Returns a geometry that represents the point set difference of the geometry\nvalues g1 and g2 -[ST_DIMENSION] -declaration=g -category=Geometry Property Functions -description=Returns the inherent dimension of the geometry value g +category=GeometryCollection properties +description=Returns a geometry that represents the point set difference of the\ngeometry values g1 and g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [ST_DISJOINT] -declaration=g1, g2 -category=Geometry Relation Functions -description=Returns 1 or 0 to indicate whether g1 is spatially disjoint from (does not\nintersect) g2 +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially disjoint from (does\nnot intersect) g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_DISTANCE] -declaration=g1, g2 [, unit] -category=Geometry Relation Functions -description=Returns the distance between g1 and g2, measured in the length unit of the\nspatial reference system (SRS) of the geometry arguments, or in the unit of\nthe optional unit argument if that is specified +declaration=g1,g2 +category=Geometry relations +description=Returns the distance between g1 and g2.\n\nAs of MySQL 5.7.5, this function processes geometry collections by\nreturning the shortest distance among all combinations of the\ncomponents of the two geometry arguments. If either argument is an\nempty geometry collection, the return value is NULL.\n\nAs of MySQL 5.7.6, if an intermediate or final result produces NaN or a\nnegative number, this function produces a ER_GIS_INVALID_DATA error.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_DISTANCE_SPHERE] declaration=g1, g2 [, radius] -category=MBR Functions -description=Returns the mimimum spherical distance between Point or MultiPoint\narguments on a sphere, in meters -[ST_ENDPOINT] -declaration=ls -category=LineString Property Functions -description=Returns the Point that is the endpoint of the LineString value ls +category=MBR +description=Returns the mimimum spherical distance between two points and/or\nmultipoints on a sphere, in meters, or NULL if any geometry argument is\nNULL or empty.\n\nCalculations use a spherical earth and a configurable radius. The\noptional radius argument should be given in meters. If omitted, the\ndefault radius is 6,370,986 meters. An ER_WRONG_ARGUMENTS error occurs\nif the radius argument is present but not positive.\n\nThe geometry arguments should consist of points that specify\n(longitude, latitude) coordinate values:\n\no Longitude and latitude are the first and second coordinates of the\n point, respectively.\n\no Both coordinates are in degrees.\n\no Longitude values must be in the range (-180, 180]. Positive values\n are east of the prime meridian.\n\no Latitude values must be in the range [-90, 90]. Positive values are\n north of the equator.\n\nSupported argument combinations are (Point, Point), (Point,\nMultiPoint), and (MultiPoint, Point). An ER_GIS_UNSUPPORTED_ARGUMENT\nerror occurs for other combinations.\n\nAn ER_GIS_INVALID_DATA error occurs if any geometry argument is not a\nvalid geometry byte string.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-convenience-functions.html [ST_ENVELOPE] declaration=g -category=Geometry Property Functions -description=Returns the minimum bounding rectangle (MBR) for the geometry value g +category=Geometry properties +description=Returns the minimum bounding rectangle (MBR) for the geometry value g.\nThe result is returned as a Polygon value that is defined by the corner\npoints of the bounding box:\n\nPOLYGON((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))\n\nAs of MySQL 5.7.6, if the argument is a point or a vertical or\nhorizontal line segment, ST_Envelope() returns the point or the line\nsegment as its MBR rather than returning an invalid polygon.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-general-property-functions.html [ST_EQUALS] -declaration=g1, g2 -category=Geometry Relation Functions -description=Returns 1 or 0 to indicate whether g1 is spatially equal to g2 -[ST_EXTERIORRING] -declaration=poly -category=Polygon Property Functions -description=Returns the exterior ring of the Polygon value poly as a LineString -[ST_FRECHETDISTANCE] -declaration=g1, g2 [, unit] -category=Geometry Relation Functions -description=Returns the discrete Fr├®chet distance between two geometries, reflecting\nhow similar the geometries are +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially equal to g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_GEOHASH] declaration=longitude, latitude, max_length -category=MBR Functions -description=max_length) Returns a geohash string in the connection character set and\ncollation -[ST_GEOMCOLLFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=ST_GeometryCollectionFromText(wkt [, srid [, options]]),\nST_GeomCollFromTxt(wkt [, srid [, options]]) Constructs a\nGeometryCollection value using its WKT representation and SRID -[ST_GEOMCOLLFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=ST_GeometryCollectionFromWKB(wkb [, srid [, options]]) Constructs a\nGeometryCollection value using its WKB representation and SRID -[ST_GEOMETRYN] -declaration=gc, N -category=GeometryCollection Property Functions -description=Returns the N-th geometry in the GeometryCollection value gc -[ST_GEOMETRYTYPE] -declaration=g -category=Geometry Property Functions -description=Returns a binary string indicating the name of the geometry type of which\nthe geometry instance g is a member +category=MBR +description=max_length)\n\nReturns a geohash string in the connection character set and collation.\nThe result is NULL if any argument is NULL. An error occurs if any\nargument is invalid.\n\nFor the first syntax, the longitude must be a number in the range\n[-180, 180], and the latitude must be a number in the range [-90, 90].\nFor the second syntax, a POINT value is required, where the X and Y\ncoordinates are in the valid ranges for longitude and latitude,\nrespectively.\n\nThe resulting string is no longer than max_length characters, which has\nan upper limit of 100. The string might be shorter than max_length\ncharacters because the algorithm that creates the geohash value\ncontinues until it has created a string that is either an exact\nrepresentation of the location or max_length characters, whichever\ncomes first.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geohash-functions.html [ST_GEOMFROMGEOJSON] declaration=str [, options [, srid]] -category=MBR Functions -description=Parses a string str representing a GeoJSON object and returns a geometry -[ST_GEOMFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=srid [, options]]) Constructs a geometry value of any type using its WKT\nrepresentation and SRID -[ST_GEOMFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=srid [, options]]) Constructs a geometry value of any type using its WKB\nrepresentation and SRID -[ST_HAUSDORFFDISTANCE] -declaration=g1, g2 [, unit] -category=Geometry Relation Functions -description=Returns the discrete Hausdorff distance between two geometries, reflecting\nhow similar the geometries are -[ST_INTERIORRINGN] -declaration=poly, N -category=Polygon Property Functions -description=Returns the N-th interior ring for the Polygon value poly as a LineString +category=MBR +description=Parses a string str representing a GeoJSON object and returns a\ngeometry.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geojson-functions.html [ST_INTERSECTION] declaration=g1, g2 -category=GeometryCollection Property Functions -description=Returns a geometry that represents the point set intersection of the\ngeometry values g1 and g2 +category=GeometryCollection properties +description=Returns a geometry that represents the point set intersection of the\ngeometry values g1 and g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [ST_INTERSECTS] -declaration=g1, g2 -category=Geometry Relation Functions -description=Returns 1 or 0 to indicate whether g1 spatially intersects g2 -[ST_ISCLOSED] -declaration=ls -category=LineString Property Functions -description=For a LineString value ls, ST_IsClosed() returns 1 if ls is closed (that\nis, its ST_StartPoint() and ST_EndPoint() values are the same) -[ST_ISEMPTY] -declaration=g -category=Geometry Property Functions -description=This function is a placeholder that returns 1 for an empty geometry\ncollection value or 0 otherwise -[ST_ISSIMPLE] -declaration=g -category=Geometry Property Functions -description=Returns 1 if the geometry value g is simple according to the ISO SQL/MM\nPart 3: Spatial standard +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially intersects g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_ISVALID] declaration=g -category=MBR Functions -description=Returns 1 if the argument is geometrically valid, 0 if the argument is not\ngeometrically valid +category=MBR +description=Checks whether a geometry is valid, as defined by the OGC\nspecification. ST_IsValid() returns 1 if the argument is a valid\ngeometry byte string and is geometrically valid, 0 if the argument is\nnot a valid geometry byte string or is not geometrically valid, NULL if\nthe argument is NULL.\n\nThe only valid empty geometry is represented in the form of an empty\ngeometry collection value. ST_IsValid() returns 1 in this case.\n\nST_IsValid() works only for the cartesian coordinate system and\nrequires a geometry argument with an SRID of 0. An ER_WRONG_ARGUMENTS\nerror occurs otherwise.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-convenience-functions.html [ST_LATFROMGEOHASH] declaration=geohash_str -category=MBR Functions -description=Returns the latitude from a geohash string value, as a double-precision\nnumber in the range [ÔêÆ90, 90] -[ST_LATITUDE] -declaration=p [, new_latitude_val] -category=Point Property Functions -description=With a single argument representing a valid Point object p that has a\ngeographic spatial reference system (SRS), ST_Latitude() returns the\nlatitude value of p as a double-precision number +category=MBR +description=Returns the latitude from a geohash string value, as a DOUBLE value in\nthe range [-90, 90]. The result is NULL if any argument is NULL. An\nerror occurs if the argument is invalid.\n\nThe ST_LatFromGeoHash() decoding function reads no more than 433\ncharacters from the geohash_str argument. That represents the upper\nlimit on information in the internal representation of coordinate\nvalues. Characters past the 433rd are ignored, even if they are\notherwise illegal and produce an error.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geohash-functions.html [ST_LENGTH] -declaration=ls [, unit] -category=LineString Property Functions -description=Returns a double-precision number indicating the length of the LineString\nor MultiLineString value ls in its associated spatial reference system -[ST_LINEFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=srid [, options]]) Constructs a LineString value using its WKT\nrepresentation and SRID -[ST_LINEFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=srid [, options]]) Constructs a LineString value using its WKB\nrepresentation and SRID -[ST_LINEINTERPOLATEPOINT] -declaration=ls, fractional_distance -category=GeometryCollection Property Functions -description=This function takes a LineString geometry and a fractional distance in the\nrange [0 -[ST_LINEINTERPOLATEPOINTS] -declaration=ls, fractional_distance -category=GeometryCollection Property Functions -description=This function takes a LineString geometry and a fractional distance in the\nrange (0 +declaration=ls +category=LineString properties +description=Returns a double-precision number indicating the length of the\nLineString value ls in its associated spatial reference.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-linestring-property-functions.html [ST_LONGFROMGEOHASH] declaration=geohash_str -category=MBR Functions -description=Returns the longitude from a geohash string value, as a double-precision\nnumber in the range [ÔêÆ180, 180] -[ST_LONGITUDE] -declaration=p [, new_longitude_val] -category=Point Property Functions -description=With a single argument representing a valid Point object p that has a\ngeographic spatial reference system (SRS), ST_Longitude() returns the\nlongitude value of p as a double-precision number +category=MBR +description=Returns the longitude from a geohash string value, as a DOUBLE value in\nthe range [-180, 180]. The result is NULL if any argument is NULL. An\nerror occurs if the argument is invalid.\n\nThe remarks in the description of ST_LatFromGeoHash() regarding the\nmaximum number of characters processed from the geohash_str argument\nalso apply to ST_LongFromGeoHash().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geohash-functions.html [ST_MAKEENVELOPE] declaration=pt1, pt2 -category=MBR Functions -description=Returns the rectangle that forms the envelope around two points, as a\nPoint, LineString, or Polygon -[ST_MLINEFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=ST_MultiLineStringFromText(wkt [, srid [, options]]) Constructs a\nMultiLineString value using its WKT representation and SRID -[ST_MLINEFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=ST_MultiLineStringFromWKB(wkb [, srid [, options]]) Constructs a\nMultiLineString value using its WKB representation and SRID -[ST_MPOINTFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=[, srid [, options]]) Constructs a MultiPoint value using its WKT\nrepresentation and SRID -[ST_MPOINTFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=srid [, options]]) Constructs a MultiPoint value using its WKB\nrepresentation and SRID -[ST_MPOLYFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=[, srid [, options]]) Constructs a MultiPolygon value using its WKT\nrepresentation and SRID -[ST_MPOLYFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=[, srid [, options]]) Constructs a MultiPolygon value using its WKB\nrepresentation and SRID -[ST_NUMGEOMETRIES] -declaration=gc -category=GeometryCollection Property Functions -description=Returns the number of geometries in the GeometryCollection value gc -[ST_NUMPOINTS] -declaration=ls -category=LineString Property Functions -description=Returns the number of Point objects in the LineString value ls +category=MBR +description=Returns the rectangle that forms the envelope around two points. The\nreturned geometry is a Point, LineString, or Polygon, or NULL if any\nargument is NULL.\n\nCalculations are done using the cartesian coordinate system rather than\non a sphere, spheroid, or on earth.\n\nGiven two points pt1 and pt2, ST_MakeEnvelope() creates the result\ngeometry on an abstract plane like this:\n\no If pt1 and pt2 are equal, the result is the point pt1.\n\no Otherwise, if (pt1, pt2) is a vertical or horizontal line segment,\n the result is the line segment (pt1, pt2).\n\no Otherwise, the result is a polygon using pt1 and pt2 as diagonal\n points. Either or both of pt1 and pt2 can be vertex points.\n\nThe result geometry has an SRID of 0.\n\nST_MakeEnvelope() requires Point geometry arguments with an SRID of 0.\nAn ER_WRONG_ARGUMENTS error occurs otherwise.\n\nAn ER_GIS_INVALID_DATA occurs if any argument is not a valid geometry\nbyte string, or if any coordinate value of the two points is infinite\n(that is, NaN).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-convenience-functions.html [ST_OVERLAPS] -declaration=g1, g2 -category=Geometry Relation Functions -description=Two geometries spatially overlap if they intersect and their intersection\nresults in a geometry of the same dimension but not equal to either of the\ngiven geometries -[ST_POINTATDISTANCE] -declaration=ls, distance -category=GeometryCollection Property Functions -description=This function takes a LineString geometry and a distance in the range [0 +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially overlaps g2. The term\nspatially overlaps is used if two geometries intersect and their\nintersection results in a geometry of the same dimension but not equal\nto either of the given geometries.\n\nAs of MySQL 5.7.5, this function returns 0 if called with an\ninapplicable geometry argument type combination. For example, it\nreturns 0 if called with geometries of different dimensions or any\nargument is a Point.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_POINTFROMGEOHASH] declaration=geohash_str, srid -category=MBR Functions -description=Returns a POINT value containing the decoded geohash value, given a geohash\nstring value -[ST_POINTFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=Constructs a Point value using its WKT representation and SRID -[ST_POINTFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=Constructs a Point value using its WKB representation and SRID -[ST_POINTN] -declaration=ls, N -category=LineString Property Functions -description=Returns the N-th Point in the Linestring value ls -[ST_POLYFROMTEXT] -declaration=wkt [, srid [, options]] -category=WKT Functions -description=srid [, options]]) Constructs a Polygon value using its WKT representation\nand SRID -[ST_POLYFROMWKB] -declaration=wkb [, srid [, options]] -category=WKB Functions -description=[, options]]) Constructs a Polygon value using its WKB representation and\nSRID +category=MBR +description=Returns a POINT value containing the decoded geohash value, given a\ngeohash string value. The X and Y coordinates of the point are the\nlongitude in the range [-180, 180] and the latitude in the range [-90,\n90], respectively. The srid value is an unsigned 32-bit integer. The\nresult is NULL if any argument is NULL. An error occurs if any argument\nis invalid.\n\nThe remarks in the description of ST_LatFromGeoHash() regarding the\nmaximum number of characters processed from the geohash_str argument\nalso apply to ST_PointFromGeoHash().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-geohash-functions.html [ST_SIMPLIFY] declaration=g, max_distance -category=MBR Functions -description=Simplifies a geometry using the Douglas-Peucker algorithm and returns a\nsimplified value of the same type -[ST_SRID] -declaration=g [, srid] -category=Geometry Property Functions -description=With a single argument representing a valid geometry object g, ST_SRID()\nreturns an integer indicating the ID of the spatial reference system (SRS)\nassociated with g -[ST_STARTPOINT] -declaration=ls -category=LineString Property Functions -description=Returns the Point that is the start point of the LineString value ls -[ST_SWAPXY] -declaration=g -category=WKB Functions -description=Accepts an argument in internal geometry format, swaps the X and Y values\nof each coordinate pair within the geometry, and returns the result +category=MBR +description=Simplifies a geometry using the Douglas-Peucker algorithm and returns a\nsimplified value of the same type, or NULL if any argument is NULL.\n\nThe geometry may be any geometry type, although the Douglas-Peucker\nalgorithm may not actually process every type. A geometry collection is\nprocessed by giving its components one by one to the simplification\nalgorithm, and the returned geometries are put into a geometry\ncollection as result.\n\nThe max_distance argument is the distance (in units of the input\ncoordinates) of a vertex to other segments to be removed. Vertices\nwithin this distance of the simplified linestring are removed. An\nER_WRONG_ARGUMENTS error occurs if the max_distance argument is not\npositive, or is NaN.\n\nAccording to Boost.Geometry, geometries might become invalid as a\nresult of the simplification process, and the process might create\nself-intersections. If you want to check the validity of the result,\npass it to ST_IsValid().\n\nAn ER_GIS_INVALID_DATA error occurs if the geometry argument is not a\nvalid geometry byte string.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-convenience-functions.html [ST_SYMDIFFERENCE] declaration=g1, g2 -category=GeometryCollection Property Functions -description=Returns a geometry that represents the point set symmetric difference of\nthe geometry values g1 and g2, which is defined as: g1 symdifference g2 :=\n(g1 union g2) difference (g1 intersection g2) Or, in function call\nnotation: ST_SymDifference(g1, g2) = ST_Difference(ST_Union(g1, g2),\nST_Intersection(g1, g2)) ST_SymDifference() handles its arguments as\ndescribed in the introduction to this section +category=GeometryCollection properties +description=Returns a geometry that represents the point set symmetric difference\nof the geometry values g1 and g2, which is defined as:\n\ng1 symdifference g2 := (g1 union g2) difference (g1 intersection g2)\n\nOr, in function call notation:\n\nST_SymDifference(g1, g2) = ST_Difference(ST_Union(g1, g2), ST_Intersection(g1, g2))\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [ST_TOUCHES] -declaration=g1, g2 -category=Geometry Relation Functions -description=Two geometries spatially touch if their interiors do not intersect, but the\nboundary of one of the geometries intersects either the boundary or the\ninterior of the other -[ST_TRANSFORM] -declaration=g, target_srid -category=GeometryCollection Property Functions -description=Transforms a geometry from one spatial reference system (SRS) to another +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially touches g2. Two\ngeometries spatially touch if the interiors of the geometries do not\nintersect, but the boundary of one of the geometries intersects either\nthe boundary or the interior of the other.\n\nAs of MySQL 5.7.5, this function returns 0 if called with an\ninapplicable geometry argument type combination. For example, it\nreturns 0 if either of the arguments is a Point or MultiPoint.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [ST_UNION] declaration=g1, g2 -category=GeometryCollection Property Functions -description=Returns a geometry that represents the point set union of the geometry\nvalues g1 and g2 +category=GeometryCollection properties +description=Returns a geometry that represents the point set union of the geometry\nvalues g1 and g2.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-operator-functions.html [ST_VALIDATE] declaration=g -category=MBR Functions -description=Validates a geometry according to the OGC specification +category=MBR +description=Validates a geometry according to the OGC specification. ST_Validate()\nreturns the geometry if it is a valid geometry byte string and is\ngeometrically valid, NULL if the argument is not a valid geometry byte\nstring or is not geometrically valid or is NULL.\n\nA geometry can be a valid geometry byte string (WKB value plus SRID)\nbut geometrically invalid. For example, this polygon is geometrically\ninvalid: POLYGON((0 0, 0 0, 0 0, 0 0, 0 0))\n\nST_Validate() can be used to filter out invalid geometry data, although\nat a cost. For applications that require more precise results not\ntainted by invalid data, this penalty may be worthwhile.\n\nIf the geometry argument is valid, it is returned as is, except that if\nan input Polygon or MultiPolygon has clockwise rings, those rings are\nreversed before checking for validity. If the geometry is valid, the\nvalue with the reversed rings is returned.\n\nThe only valid empty geometry is represented in the form of an empty\ngeometry collection value. ST_Validate() returns it directly without\nfurther checks in this case.\n\nST_Validate() works only for the cartesian coordinate system and\nrequires a geometry argument with an SRID of 0. An ER_WRONG_ARGUMENTS\nerror occurs otherwise.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-convenience-functions.html [ST_WITHIN] -declaration=g1, g2 -category=Geometry Relation Functions -description=Returns 1 or 0 to indicate whether g1 is spatially within g2 -[ST_X] -declaration=p [, new_x_val] -category=Point Property Functions -description=With a single argument representing a valid Point object p, ST_X() returns\nthe X-coordinate value of p as a double-precision number -[ST_Y] -declaration=p [, new_y_val] -category=Point Property Functions -description=With a single argument representing a valid Point object p, ST_Y() returns\nthe Y-coordinate value of p as a double-precision number +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially within g2. This\ntests the opposite relationship as ST_Contains().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-object-shapes.html [SUBDATE] declaration=date,INTERVAL expr unit category=Date and Time Functions -description=When invoked with the INTERVAL form of the second argument, SUBDATE() is a\nsynonym for DATE_SUB() +description=When invoked with the INTERVAL form of the second argument, SUBDATE()\nis a synonym for DATE_SUB(). For information on the INTERVAL unit\nargument, see the discussion for DATE_ADD().\n\nmysql> SELECT DATE_SUB('2008-01-02', INTERVAL 31 DAY);\n -> '2007-12-02'\nmysql> SELECT SUBDATE('2008-01-02', INTERVAL 31 DAY);\n -> '2007-12-02'\n\nThe second form enables the use of an integer value for days. In such\ncases, it is interpreted as the number of days to be subtracted from\nthe date or datetime expression expr.\n\nmysql> SELECT SUBDATE('2008-01-02 12:00:00', 31);\n -> '2007-12-02 12:00:00'\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [SUBSTR] declaration=str,pos category=String Functions -description=FROM pos FOR len) SUBSTR() is a synonym for SUBSTRING() +description=FROM pos FOR len)\n\nSUBSTR() is a synonym for SUBSTRING().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [SUBSTRING] declaration=str,pos category=String Functions -description=SUBSTRING(str FROM pos FOR len) The forms without a len argument return a\nsubstring from string str starting at position pos +description=SUBSTRING(str FROM pos FOR len)\n\nThe forms without a len argument return a substring from string str\nstarting at position pos. The forms with a len argument return a\nsubstring len characters long from string str, starting at position\npos. The forms that use FROM are standard SQL syntax. It is also\npossible to use a negative value for pos. In this case, the beginning\nof the substring is pos characters from the end of the string, rather\nthan the beginning. A negative value may be used for pos in any of the\nforms of this function.\n\nFor all forms of SUBSTRING(), the position of the first character in\nthe string from which the substring is to be extracted is reckoned as\n1.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [SUBSTRING_INDEX] declaration=str,delim,count category=String Functions -description=Returns the substring from string str before count occurrences of the\ndelimiter delim +description=Returns the substring from string str before count occurrences of the\ndelimiter delim. If count is positive, everything to the left of the\nfinal delimiter (counting from the left) is returned. If count is\nnegative, everything to the right of the final delimiter (counting from\nthe right) is returned. SUBSTRING_INDEX() performs a case-sensitive\nmatch when searching for delim.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [SUBTIME] declaration=expr1,expr2 category=Date and Time Functions -description=SUBTIME() returns expr1 ÔêÆ expr2 expressed as a value in the same format\nas expr1 +description=SUBTIME() returns expr1 - expr2 expressed as a value in the same format\nas expr1. expr1 is a time or datetime expression, and expr2 is a time\nexpression.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [SUM] declaration=[DISTINCT] expr -category=Aggregate Functions and Modifiers -description=Returns the sum of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the sum of expr. If the return set has no rows, SUM() returns\nNULL. The DISTINCT keyword can be used to sum only the distinct values\nof expr.\n\nSUM() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [SYSDATE] declaration=[fsp] category=Date and Time Functions -description=Returns the current date and time as a value in 'YYYY-MM-DD hh:mm:ss' or\nYYYYMMDDhhmmss format, depending on whether the function is used in string\nor numeric context +description=Returns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS'\nor YYYYMMDDHHMMSS format, depending on whether the function is used in\na string or numeric context.\n\nIf the fsp argument is given to specify a fractional seconds precision\nfrom 0 to 6, the return value includes a fractional seconds part of\nthat many digits. Before 5.6.4, any argument is ignored.\n\nSYSDATE() returns the time at which it executes. This differs from the\nbehavior for NOW(), which returns a constant time that indicates the\ntime at which the statement began to execute. (Within a stored function\nor trigger, NOW() returns the time at which the function or triggering\nstatement began to execute.)\n\nmysql> SELECT NOW(), SLEEP(2), NOW();\n+---------------------+----------+---------------------+\n| NOW() | SLEEP(2) | NOW() |\n+---------------------+----------+---------------------+\n| 2006-04-12 13:47:36 | 0 | 2006-04-12 13:47:36 |\n+---------------------+----------+---------------------+\n\nmysql> SELECT SYSDATE(), SLEEP(2), SYSDATE();\n+---------------------+----------+---------------------+\n| SYSDATE() | SLEEP(2) | SYSDATE() |\n+---------------------+----------+---------------------+\n| 2006-04-12 13:47:44 | 0 | 2006-04-12 13:47:46 |\n+---------------------+----------+---------------------+\n\nIn addition, the SET TIMESTAMP statement affects the value returned by\nNOW() but not by SYSDATE(). This means that timestamp settings in the\nbinary log have no effect on invocations of SYSDATE().\n\nBecause SYSDATE() can return different values even within the same\nstatement, and is not affected by SET TIMESTAMP, it is nondeterministic\nand therefore unsafe for replication if statement-based binary logging\nis used. If that is a problem, you can use row-based logging.\n\nAlternatively, you can use the --sysdate-is-now option to cause\nSYSDATE() to be an alias for NOW(). This works if the option is used on\nboth the master and the slave.\n\nThe nondeterministic nature of SYSDATE() also means that indexes cannot\nbe used for evaluating expressions that refer to it.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[SYSTEM_USER] +declaration= +category=Information Functions +description=SYSTEM_USER() is a synonym for USER().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [TAN] declaration=X category=Numeric Functions -description=Returns the tangent of X, where X is given in radians +description=Returns the tangent of X, where X is given in radians.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html +[TEXT] +declaration=M +category=Data Types +description=A TEXT column with a maximum length of 65,535 (216 - 1) characters. The\neffective maximum length is less if the value contains multibyte\ncharacters. Each TEXT value is stored using a 2-byte length prefix that\nindicates the number of bytes in the value.\n\nAn optional length M can be given for this type. If this is done, MySQL\ncreates the column as the smallest TEXT type large enough to hold\nvalues M characters long.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html +[TIME] +declaration=fsp +category=Data Types +description=A time. The range is '-838:59:59.000000' to '838:59:59.000000'. MySQL\ndisplays TIME values in 'HH:MM:SS[.fraction]' format, but permits\nassignment of values to TIME columns using either strings or numbers.\n\nAn optional fsp value in the range from 0 to 6 may be given to specify\nfractional seconds precision. A value of 0 signifies that there is no\nfractional part. If omitted, the default precision is 0.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-type-overview.html [TIMEDIFF] declaration=expr1,expr2 category=Date and Time Functions -description=TIMEDIFF() returns expr1 ÔêÆ expr2 expressed as a time value +description=TIMEDIFF() returns expr1 - expr2 expressed as a time value. expr1 and\nexpr2 are time or date-and-time expressions, but both must be of the\nsame type.\n\nThe result returned by TIMEDIFF() is limited to the range allowed for\nTIME values. Alternatively, you can use either of the functions\nTIMESTAMPDIFF() and UNIX_TIMESTAMP(), both of which return integers.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[TIMESTAMP] +declaration=fsp +category=Data Types +description=A timestamp. The range is '1970-01-01 00:00:01.000000' UTC to\n'2038-01-19 03:14:07.999999' UTC. TIMESTAMP values are stored as the\nnumber of seconds since the epoch ('1970-01-01 00:00:00' UTC). A\nTIMESTAMP cannot represent the value '1970-01-01 00:00:00' because that\nis equivalent to 0 seconds from the epoch and the value 0 is reserved\nfor representing '0000-00-00 00:00:00', the "zero" TIMESTAMP value.\n\nAn optional fsp value in the range from 0 to 6 may be given to specify\nfractional seconds precision. A value of 0 signifies that there is no\nfractional part. If omitted, the default precision is 0.\n\nThe way the server handles TIMESTAMP definitions depends on the value\nof the explicit_defaults_for_timestamp system variable (see\nhttp://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html).\nBy default, explicit_defaults_for_timestamp is disabled and the server\nhandles TIMESTAMP as follows:\n\nUnless specified otherwise, the first TIMESTAMP column in a table is\ndefined to be automatically set to the date and time of the most recent\nmodification if not explicitly assigned a value. This makes TIMESTAMP\nuseful for recording the timestamp of an INSERT or UPDATE operation.\nYou can also set any TIMESTAMP column to the current date and time by\nassigning it a NULL value, unless it has been defined with the NULL\nattribute to permit NULL values.\n\nAutomatic initialization and updating to the current date and time can\nbe specified using DEFAULT CURRENT_TIMESTAMP and ON UPDATE\nCURRENT_TIMESTAMP column definition clauses. By default, the first\nTIMESTAMP column has these properties, as previously noted. However,\nany TIMESTAMP column in a table can be defined to have these\nproperties.\n\nIf explicit_defaults_for_timestamp is enabled, there is no automatic\nassignment of the DEFAULT CURRENT_TIMESTAMP or ON UPDATE\nCURRENT_TIMESTAMP attributes to any TIMESTAMP column. They must be\nincluded explicitly in the column definition. Also, any TIMESTAMP not\nexplicitly declared as NOT NULL permits NULL values.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-type-overview.html [TIMESTAMPADD] declaration=unit,interval,datetime_expr category=Date and Time Functions -description=Adds the integer expression interval to the date or datetime expression\ndatetime_expr +description=Adds the integer expression interval to the date or datetime expression\ndatetime_expr. The unit for interval is given by the unit argument,\nwhich should be one of the following values: MICROSECOND\n(microseconds), SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, or\nYEAR.\n\nThe unit value may be specified using one of keywords as shown, or with\na prefix of SQL_TSI_. For example, DAY and SQL_TSI_DAY both are legal.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [TIMESTAMPDIFF] declaration=unit,datetime_expr1,datetime_expr2 category=Date and Time Functions -description=Returns datetime_expr2 - datetime_expr1, where datetime_expr1 and\ndatetime_expr2 are date or datetime expressions +description=Returns datetime_expr2 - datetime_expr1, where datetime_expr1 and\ndatetime_expr2 are date or datetime expressions. One expression may be\na date and the other a datetime; a date value is treated as a datetime\nhaving the time part '00:00:00' where necessary. The unit for the\nresult (an integer) is given by the unit argument. The legal values for\nunit are the same as those listed in the description of the\nTIMESTAMPADD() function.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [TIME_FORMAT] declaration=time,format category=Date and Time Functions -description=This is used like the DATE_FORMAT() function, but the format string may\ncontain format specifiers only for hours, minutes, seconds, and\nmicroseconds +description=This is used like the DATE_FORMAT() function, but the format string may\ncontain format specifiers only for hours, minutes, seconds, and\nmicroseconds. Other specifiers produce a NULL value or 0.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [TIME_TO_SEC] declaration=time category=Date and Time Functions -description=Returns the time argument, converted to seconds -[TO_BASE64] -declaration=str -category=String Functions -description=Converts the string argument to base-64 encoded form and returns the result\nas a character string with the connection character set and collation +description=Returns the time argument, converted to seconds.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[TINYINT] +declaration=M +category=Data Types +description=A very small integer. The signed range is -128 to 127. The unsigned\nrange is 0 to 255.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/numeric-type-overview.html +[TOUCHES] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 spatially touches g2. Two\ngeometries spatially touch if the interiors of the geometries do not\nintersect, but the boundary of one of the geometries intersects either\nthe boundary or the interior of the other.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html [TO_DAYS] declaration=date category=Date and Time Functions -description=Given a date date, returns a day number (the number of days since year 0) +description=Given a date date, returns a day number (the number of days since year\n0).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [TO_SECONDS] declaration=expr category=Date and Time Functions -description=Given a date or datetime expr, returns the number of seconds since the year\n0 +description=Given a date or datetime expr, returns the number of seconds since the\nyear 0. If expr is not a valid date or datetime value, returns NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [TRIM] declaration=[{BOTH | LEADING | TRAILING} [remstr] FROM] str category=String Functions -description=FROM] str) Returns the string str with all remstr prefixes or suffixes\nremoved +description=FROM] str)\n\nReturns the string str with all remstr prefixes or suffixes removed. If\nnone of the specifiers BOTH, LEADING, or TRAILING is given, BOTH is\nassumed. remstr is optional and, if not specified, spaces are removed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [TRUNCATE] declaration=X,D category=Numeric Functions -description=Returns the number X, truncated to D decimal places +description=Returns the number X, truncated to D decimal places. If D is 0, the\nresult has no decimal point or fractional part. D can be negative to\ncause D digits left of the decimal point of the value X to become zero.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html [UCASE] declaration=str category=String Functions -description=UCASE() is a synonym for UPPER() +description=UCASE() is a synonym for UPPER().\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [UNCOMPRESS] declaration=string_to_uncompress category=Encryption Functions -description=Uncompresses a string compressed by the COMPRESS() function +description=Uncompresses a string compressed by the COMPRESS() function. If the\nargument is not a compressed value, the result is NULL. This function\nrequires MySQL to have been compiled with a compression library such as\nzlib. Otherwise, the return value is always NULL.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [UNCOMPRESSED_LENGTH] declaration=compressed_string category=Encryption Functions -description=Returns the length that the compressed string had before being compressed +description=Returns the length that the compressed string had before being\ncompressed.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [UNHEX] declaration=str category=String Functions -description=For a string argument str, UNHEX(str) interprets each pair of characters in\nthe argument as a hexadecimal number and converts it to the byte\nrepresented by the number +description=For a string argument str, UNHEX(str) interprets each pair of\ncharacters in the argument as a hexadecimal number and converts it to\nthe byte represented by the number. The return value is a binary\nstring.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html [UNIX_TIMESTAMP] -declaration=[date] +declaration= category=Date and Time Functions -description=If UNIX_TIMESTAMP() is called with no date argument, it returns a Unix\ntimestamp representing seconds since '1970-01-01 00:00:00' UTC +description=If called with no argument, returns a Unix timestamp (seconds since\n'1970-01-01 00:00:00' UTC) as an unsigned integer. If UNIX_TIMESTAMP()\nis called with a date argument, it returns the value of the argument as\nseconds since '1970-01-01 00:00:00' UTC. date may be a DATE string, a\nDATETIME string, a TIMESTAMP, or a number in the format YYMMDD or\nYYYYMMDD. The server interprets date as a value in the current time\nzone and converts it to an internal value in UTC. Clients can set their\ntime zone as described in\nhttp://dev.mysql.com/doc/refman/5.7/en/time-zone-support.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [UPDATEXML] declaration=xml_target, xpath_expr, new_xml -category=XML -description=This function replaces a single portion of a given fragment of XML markup\nxml_target with a new XML fragment new_xml, and then returns the changed\nXML +category=String Functions +description=This function replaces a single portion of a given fragment of XML\nmarkup xml_target with a new XML fragment new_xml, and then returns the\nchanged XML. The portion of xml_target that is replaced matches an\nXPath expression xpath_expr supplied by the user.\n\nIf no expression matching xpath_expr is found, or if multiple matches\nare found, the function returns the original xml_target XML fragment.\nAll three arguments should be strings.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/xml-functions.html [UPPER] declaration=str category=String Functions -description=Returns the string str with all characters changed to uppercase according\nto the current character set mapping -[UUID_TO_BIN] -declaration=string_uuid +description=Returns the string str with all characters changed to uppercase\naccording to the current character set mapping. The default is latin1\n(cp1252 West European).\n\nmysql> SELECT UPPER('Hej');\n -> 'HEJ'\n\nSee the description of LOWER() for information that also applies to\nUPPER(). This included information about how to perform lettercase\nconversion of binary strings (BINARY, VARBINARY, BLOB) for which these\nfunctions are ineffective, and information about case folding for\nUnicode character sets.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-functions.html +[USER] +declaration= +category=Information Functions +description=Returns the current MySQL user name and host name as a string in the\nutf8 character set.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html +[UTC_DATE] +declaration= +category=Date and Time Functions +description=Returns the current UTC date as a value in 'YYYY-MM-DD' or YYYYMMDD\nformat, depending on whether the function is used in a string or\nnumeric context.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[UTC_TIME] +declaration=[fsp] +category=Date and Time Functions +description=Returns the current UTC time as a value in 'HH:MM:SS' or HHMMSS format,\ndepending on whether the function is used in a string or numeric\ncontext.\n\nIf the fsp argument is given to specify a fractional seconds precision\nfrom 0 to 6, the return value includes a fractional seconds part of\nthat many digits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[UTC_TIMESTAMP] +declaration=[fsp] +category=Date and Time Functions +description=Returns the current UTC date and time as a value in 'YYYY-MM-DD\nHH:MM:SS' or YYYYMMDDHHMMSS format, depending on whether the function\nis used in a string or numeric context.\n\nIf the fsp argument is given to specify a fractional seconds precision\nfrom 0 to 6, the return value includes a fractional seconds part of\nthat many digits.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html +[UUID] +declaration= category=Miscellaneous Functions -description=Converts a string UUID to a binary UUID and returns the result +description=Returns a Universal Unique Identifier (UUID) generated according to\n"DCE 1.1: Remote Procedure Call" (Appendix A) CAE (Common Applications\nEnvironment) Specifications published by The Open Group in October 1997\n(Document Number C706,\nhttp://www.opengroup.org/public/pubs/catalog/c706.htm).\n\nA UUID is designed as a number that is globally unique in space and\ntime. Two calls to UUID() are expected to generate two different\nvalues, even if these calls are performed on two separate computers\nthat are not connected to each other.\n\nA UUID is a 128-bit number represented by a utf8 string of five\nhexadecimal numbers in aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee format:\n\no The first three numbers are generated from a timestamp.\n\no The fourth number preserves temporal uniqueness in case the timestamp\n value loses monotonicity (for example, due to daylight saving time).\n\no The fifth number is an IEEE 802 node number that provides spatial\n uniqueness. A random number is substituted if the latter is not\n available (for example, because the host computer has no Ethernet\n card, or we do not know how to find the hardware address of an\n interface on your operating system). In this case, spatial uniqueness\n cannot be guaranteed. Nevertheless, a collision should have very low\n probability.\n\n Currently, the MAC address of an interface is taken into account only\n on FreeBSD and Linux. On other operating systems, MySQL uses a\n randomly generated 48-bit number.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html +[UUID_SHORT] +declaration= +category=Miscellaneous Functions +description=Returns a "short" universal identifier as a 64-bit unsigned integer\n(rather than a string-form 128-bit identifier as returned by the UUID()\nfunction).\n\nThe value of UUID_SHORT() is guaranteed to be unique if the following\nconditions hold:\n\no The server_id of the current host is unique among your set of master\n and slave servers\n\no server_id is between 0 and 255\n\no You do not set back your system time for your server between mysqld\n restarts\n\no You do not invoke UUID_SHORT() on average more than 16 million times\n per second between mysqld restarts\n\nThe UUID_SHORT() return value is constructed this way:\n\n (server_id & 255) << 56\n+ (server_startup_time_in_seconds << 24)\n+ incremented_variable++;\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [VALIDATE_PASSWORD_STRENGTH] declaration=str category=Encryption Functions -description=Given an argument representing a plaintext password, this function returns\nan integer to indicate how strong the password is +description=Given an argument representing a cleartext password, this function\nreturns an integer to indicate how strong the password is. The return\nvalue ranges from 0 (weak) to 100 (strong).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html [VALUES] declaration=col_name category=Miscellaneous Functions -description=In an INSERT +description=In an INSERT ... ON DUPLICATE KEY UPDATE statement, you can use the\nVALUES(col_name) function in the UPDATE clause to refer to column\nvalues from the INSERT portion of the statement. In other words,\nVALUES(col_name) in the UPDATE clause refers to the value of col_name\nthat would be inserted, had no duplicate-key conflict occurred. This\nfunction is especially useful in multiple-row inserts. The VALUES()\nfunction is meaningful only in the ON DUPLICATE KEY UPDATE clause of\nINSERT statements and returns NULL otherwise. See\nhttp://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html [VARBINARY] declaration=M category=Data Types -description=The VARBINARY type is similar to the VARCHAR type, but stores binary byte\nstrings rather than nonbinary character strings +description=The VARBINARY type is similar to the VARCHAR type, but stores binary\nbyte strings rather than nonbinary character strings. M represents the\nmaximum column length in bytes.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html +[VARCHAR] +declaration=M +category=Data Types +description=collation_name]\n\nA variable-length string. M represents the maximum column length in\ncharacters. The range of M is 0 to 65,535. The effective maximum length\nof a VARCHAR is subject to the maximum row size (65,535 bytes, which is\nshared among all columns) and the character set used. For example, utf8\ncharacters can require up to three bytes per character, so a VARCHAR\ncolumn that uses the utf8 character set can be declared to be a maximum\nof 21,844 characters. See\nhttp://dev.mysql.com/doc/refman/5.7/en/column-count-limit.html.\n\nMySQL stores VARCHAR values as a 1-byte or 2-byte length prefix plus\ndata. The length prefix indicates the number of bytes in the value. A\nVARCHAR column uses one length byte if values require no more than 255\nbytes, two length bytes if values may require more than 255 bytes.\n\n*Note*: MySQL 5.7 follows the standard SQL specification, and does not\nremove trailing spaces from VARCHAR values.\n\nVARCHAR is shorthand for CHARACTER VARYING. NATIONAL VARCHAR is the\nstandard SQL way to define that a VARCHAR column should use some\npredefined character set. MySQL 4.1 and up uses utf8 as this predefined\ncharacter set.\nhttp://dev.mysql.com/doc/refman/5.7/en/charset-national.html. NVARCHAR\nis shorthand for NATIONAL VARCHAR.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html [VARIANCE] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the population standard variance of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the population standard variance of expr. This is an extension\nto standard SQL. The standard SQL function VAR_POP() can be used\ninstead.\n\nVARIANCE() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [VAR_POP] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the population standard variance of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the population standard variance of expr. It considers rows as\nthe whole population, not as a sample, so it has the number of rows as\nthe denominator. You can also use VARIANCE(), which is equivalent but\nis not standard SQL.\n\nVAR_POP() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html [VAR_SAMP] declaration=expr -category=Aggregate Functions and Modifiers -description=Returns the sample variance of expr +category=Functions and Modifiers for Use with GROUP BY +description=Returns the sample variance of expr. That is, the denominator is the\nnumber of rows minus one.\n\nVAR_SAMP() returns NULL if there were no matching rows.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html +[VERSION] +declaration= +category=Information Functions +description=Returns a string that indicates the MySQL server version. The string\nuses the utf8 character set. The value might have a suffix in addition\nto the version number. See the description of the version system\nvariable in\nhttp://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/information-functions.html [WAIT_FOR_EXECUTED_GTID_SET] declaration=gtid_set[, timeout] -category=GTID -description=Wait until the server has applied all of the transactions whose global\ntransaction identifiers are contained in gtid_set; that is, until the\ncondition GTID_SUBSET(gtid_subset, @@GLOBAL +category=MBR +description=Introduced in MySQL 5.7.5, WAIT_FOR_EXECUTED_GTID_SET() is similar to\nWAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() in that it waits until a server has\nexecuted all of the transactions whose global transaction identifiers\nare contained in gtid_set, or until timeout seconds have elapsed,\nwhichever occurs first. Unlike WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(),\nWAIT_FOR_EXECUTED_GTID_SET() does not take into account whether the\nslave is running or not, and an error is returned if GTID-based\nreplication is not enabled.\n\nIn addition, WAIT_FOR_EXECUTED_GTID_SET() returns only the state of the\nquery, where 0 represents success, 1 represents timeout, and any other\nfailures return the error message.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gtid-functions.html [WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS] declaration=gtid_set[, timeout][,channel] -category=GTID -description=WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS() is deprecated +category=MBR +description=Wait until the slave SQL thread has executed all of the transactions\nwhose global transaction identifiers are contained in gtid_set (see\nhttp://dev.mysql.com/doc/refman/5.7/en/replication-gtids-concepts.html,\nfor a definition of "GTID sets"), or until timeout seconds have\nelapsed, whichever occurs first. timeout is optional; the default\ntimeout is 0 seconds, in which case the function waits until all of the\ntransactions in the GTID set have been executed.\n\nFor more information, see\nhttp://dev.mysql.com/doc/refman/5.7/en/replication-gtids.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gtid-functions.html [WEEK] declaration=date[,mode] category=Date and Time Functions -description=This function returns the week number for date +description=This function returns the week number for date. The two-argument form\nof WEEK() enables you to specify whether the week starts on Sunday or\nMonday and whether the return value should be in the range from 0 to 53\nor from 1 to 53. If the mode argument is omitted, the value of the\ndefault_week_format system variable is used. See\nhttp://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [WEEKDAY] declaration=date category=Date and Time Functions -description=Returns the weekday index for date (0 = Monday, 1 = Tuesday, +description=Returns the weekday index for date (0 = Monday, 1 = Tuesday, ... 6 =\nSunday).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [WEEKOFYEAR] declaration=date category=Date and Time Functions -description=Returns the calendar week of the date as a number in the range from 1 to 53 +description=Returns the calendar week of the date as a number in the range from 1\nto 53. WEEKOFYEAR() is a compatibility function that is equivalent to\nWEEK(date,3).\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [WEIGHT_STRING] -declaration=str [AS {CHAR|BINARY}(N)] [flags] +declaration=str [AS {CHAR|BINARY}(N category=String Functions -description=This function returns the weight string for the input string +description=levels: N [ASC|DESC|REVERSE] [, N [ASC|DESC|REVERSE]] ...\n\nThis function returns the weight string for the input string. The\nreturn value is a binary string that represents the sorting and\ncomparison value of the string. It has these properties:\n\no If WEIGHT_STRING(str1) = WEIGHT_STRING(str2), then str1 = str2 (str1\n and str2 are considered equal)\n\no If WEIGHT_STRING(str1) < WEIGHT_STRING(str2), then str1 < str2 (str1\n sorts before str2)\n\nWEIGHT_STRING() can be used for testing and debugging of collations,\nespecially if you are adding a new collation. See\nhttp://dev.mysql.com/doc/refman/5.7/en/adding-collation.html.\n\nThe input string, str, is a string expression. If the input is a\nnonbinary (character) string such as a CHAR, VARCHAR, or TEXT value,\nthe return value contains the collation weights for the string. If the\ninput is a binary (byte) string such as a BINARY, VARBINARY, or BLOB\nvalue, the return value is the same as the input (the weight for each\nbyte in a binary string is the byte value). If the input is NULL,\nWEIGHT_STRING() returns NULL.\n\nExamples:\n\nmysql> SET @s = _latin1 'AB' COLLATE latin1_swedish_ci;\nmysql> SELECT @s, HEX(@s), HEX(WEIGHT_STRING(@s));\n+------+---------+------------------------+\n| @s | HEX(@s) | HEX(WEIGHT_STRING(@s)) |\n+------+---------+------------------------+\n| AB | 4142 | 4142 |\n+------+---------+------------------------+\n\nmysql> SET @s = _latin1 'ab' COLLATE latin1_swedish_ci;\nmysql> SELECT @s, HEX(@s), HEX(WEIGHT_STRING(@s));\n+------+---------+------------------------+\n| @s | HEX(@s) | HEX(WEIGHT_STRING(@s)) |\n+------+---------+------------------------+\n| ab | 6162 | 4142 |\n+------+---------+------------------------+\n\nmysql> SET @s = CAST('AB' AS BINARY);\nmysql> SELECT @s, HEX(@s), HEX(WEIGHT_STRING(@s));\n+------+---------+------------------------+\n| @s | HEX(@s) | HEX(WEIGHT_STRING(@s)) |\n+------+---------+------------------------+\n| AB | 4142 | 4142 |\n+------+---------+------------------------+\n\n ... +[WITHIN] +declaration=g1,g2 +category=Geometry relations +description=Returns 1 or 0 to indicate whether g1 is spatially within g2. This\ntests the opposite relationship as Contains().\n\nThis function is deprecated as of MySQL 5.7.6 and will be removed in a\nfuture MySQL release. Use MBRWithin() instead.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/spatial-relation-functions-mbr.html +[X] +declaration=p +category=Point properties +description=Returns the X-coordinate value for the Point object p as a\ndouble-precision number.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-point-property-functions.html +[Y] +declaration=p +category=Point properties +description=Returns the Y-coordinate value for the Point object p as a\ndouble-precision number.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/gis-point-property-functions.html [YEAR] declaration=date category=Date and Time Functions -description=Returns the year for date, in the range 1000 to 9999, or 0 for the "zero"\ndate +description=Returns the year for date, in the range 1000 to 9999, or 0 for the\n"zero" date.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html [YEARWEEK] declaration=date category=Date and Time Functions -description=Returns year and week for a date +description=Returns year and week for a date. The mode argument works exactly like\nthe mode argument to WEEK(). The year in the result may be different\nfrom the year in the date argument for the first and the last week of\nthe year.\n\nURL: http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html \ No newline at end of file