2 /* vim: set expandtab sw=4 ts=4 sts=4: */
4 * SQL Parser Matching Data
6 * Copyright 2002 Robin Johnson <robbat2@users.sourceforge.net>
7 * http://www.orbis-terrarum.net/?l=people.robbat2
9 * This data is used by the SQL Parser to recognize keywords
11 * It has been extracted from the lex.h file in the MySQL BK tree
12 * (around 4.0.2) as well as the MySQL documentation.
14 * It's easier to use only uppercase for proper sorting. In case of
15 * doubt, use the test case to verify.
19 if (! defined('PHPMYADMIN')) {
23 if (! isset($GLOBALS['sql_delimiter'])) {
24 $GLOBALS['sql_delimiter'] = ';';
28 * @global array MySQL function names
30 $PMA_SQPdata_function_name = array (
37 'AREA', // polygon-property-functions.html
55 'BIT_XOR', // group-by-functions.html
56 'BOUNDARY', // general-geometry-property-functions.html
61 'CENTROID', // multipolygon-property-functions.html
62 'CHAR', // string-functions.html
64 'CHARSET', // information-functions.html
67 'COERCIBILITY', // information-functions.html
68 'COLLATION', // information-functions.html
69 'COMPRESS', // string-functions.html
81 'CRC32', // mathematical-functions.html
90 'DATE', // date-and-time-functions.html
91 'DATEDIFF', // date-and-time-functions.html
102 'DEFAULT', // miscellaneous-functions.html
107 'DIMENSION', // general-geometry-property-functions.html
113 'ENDPOINT', // linestring-property-functions.html
114 'ENVELOPE', // general-geometry-property-functions.html
118 'EXTERIORRING', // polygon-property-functions.html
120 'EXTRACTVALUE', // xml-functions.html
130 'GEOMETRYCOLLECTION',
131 'GEOMETRYCOLLECTIONFROMTEXT',
132 'GEOMETRYCOLLECTIONFROMWKB',
135 'GEOMETRYN', // geometrycollection-property-functions.html
136 'GEOMETRYTYPE', // general-geometry-property-functions.html
141 'GLENGTH', // linestring-property-functions.html
144 'GROUP_UNIQUE_USERS',
147 'IF', //control-flow-functions.html
151 'INSERT', // string-functions.html
153 'INTERIORRINGN', // polygon-property-functions.html
157 'ISCLOSED', // multilinestring-property-functions.html
158 'ISEMPTY', // general-geometry-property-functions.html
160 'ISRING', // linestring-property-functions.html
161 'ISSIMPLE', // general-geometry-property-functions.html
163 'IS_USED_LOCK', // miscellaneous-functions.html
173 'LINESTRINGFROMTEXT',
213 'MULTILINESTRINGFROMTEXT',
214 'MULTILINESTRINGFROMWKB',
216 'MULTIPOINTFROMTEXT',
219 'MULTIPOLYGONFROMTEXT',
220 'MULTIPOLYGONFROMWKB',
221 'NAME_CONST', // NAME_CONST()
224 'NUMGEOMETRIES', // geometrycollection-property-functions.html
225 'NUMINTERIORRINGS', // polygon-property-functions.html
226 'NUMPOINTS', // linestring-property-functions.html
239 'POINTN', // inestring-property-functions.html
240 'POINTONSURFACE', // multipolygon-property-functions.html
256 'REPLACE', // string-functions.html
260 'ROW_COUNT', // information-functions.html
263 'SCHEMA', // information-functions.html
271 'SLEEP', // miscellaneous-functions.html
275 'SRID', // general-geometry-property-functions.html
276 'STARTPOINT', // linestring-property-functions.html
279 'STDDEV_POP', // group-by-functions.html
280 'STDDEV_SAMP', // group-by-functions.html
303 'TRUNCATE', // mathematical-functions.html
305 'UNCOMPRESS', // string-functions.html
306 'UNCOMPRESSED_LENGTH', // string-functions.html
307 'UNHEX', // string-functions.html
310 'UPDATEXML', // xml-functions.html
316 'UUID', // miscellaneous-functions.html
317 'VARIANCE', // group-by-functions.html
318 'VAR_POP', // group-by-functions.html
319 'VAR_SAMP', // group-by-functions.html
325 'X', // point-property-functions.html
326 'Y', // point-property-functions.html
332 * @global array MySQL attributes
334 $PMA_SQPdata_column_attrib = array (
339 'BERKELEYDB', // Engine alias BDB
341 'BLACKHOLE', // Engine
345 'FEDERATED', // Engine
347 'INNOBASE', // Engine alias InnoDB
348 'INNODB', // Engine InnoDB
351 'MEMORY', // Engine alias HEAP, but preferred
353 'MRG_ISAM', // Engine
354 'MRG_MYISAM', // Engine alias MERGE
355 'MYISAM', // Engine MyISAM
357 'NDB', // Engine alias NDBCLUSTER
358 'NDBCLUSTER', // Engine
368 * words that are reserved by MySQL and may not be used as identifiers without
371 * @see http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
373 * @global array MySQL reserved words
375 $PMA_SQPdata_reserved_word = array (
470 'GEMINI_SPIN_RETRIES',
518 'MASTER_CONNECT_RETRY',
519 'MASTER_HEARTBEAT_PERIOD',
528 'MAX_CONNECTIONS_PER_HOUR',
529 'MAX_QUERIES_PER_HOUR',
531 'MAX_UPDATES_PER_HOUR',
532 'MAX_USER_CONNECTIONS',
545 // 'NO' is not allowed in SQL-99 but is allowed in MySQL
560 'PAGE', // 5.1-maria ?
561 'PAGE_CHECKSUM', // 5.1
615 'SOUNDS', // string-functions.html
623 'SQL_CALC_FOUND_ROWS',
627 'SQL_LOW_PRIORITY_UPDATES',
630 'SQL_QUOTE_SHOW_CREATE',
633 'SQL_SLAVE_SKIP_COUNTER',
652 'TRANSACTIONAL', // 5.1 ?
678 * words forbidden to be used as column or table name without quotes
679 * as seen in http://dev.mysql.com/doc/refman/5.6/en/reserved-words.html
681 * @global array MySQL forbidden words
683 $PMA_SQPdata_forbidden_word = array (
812 'MASTER_HEARTBEAT_PERIOD',
813 'MASTER_SSL_VERIFY_SERVER_CERT',
820 'MINUTE_MICROSECOND',
826 'NO_WRITE_TO_BINLOG',
864 'SECOND_MICROSECOND',
882 'SQL_CALC_FOUND_ROWS',
925 * the MySQL column/data types
927 * @see http://dev.mysql.com/doc/refman/5.1/en/data-types.html
928 * @see http://dev.mysql.com/doc/refman/5.1/en/mysql-spatial-datatypes.html
930 * @global array MySQL column types
932 $PMA_SQPdata_column_type = array (
938 'BOOLEAN', // numeric-type-overview.html
950 'GEOMETRY', // spatial
951 'GEOMETRYCOLLECTION', // spatial
959 'LINESTRING', // spatial
967 'MULTILINESTRING', // spatial
968 'MULTIPOINT', // spatial
969 'MULTIPOLYGON', // spatial
973 'POLYGON', // spatial
990 * Documentation links for operators.
992 $PMA_SQPdata_operators_docs = array(
994 'link' => 'comparison-operators',
995 'anchor' => 'operator_not-equal',
998 'link' => 'comparison-operators',
999 'anchor' => 'operator_not-equal',
1002 'link' => 'logical-operators',
1003 'anchor' => 'operator_not',
1006 'link' => 'logical-operators',
1007 'anchor' => 'operator_or',
1010 'link' => 'arithmetic-functions',
1011 'anchor' => 'operator_plus',
1014 'link' => 'bit-functions',
1015 'anchor' => 'operator_right-shift',
1018 'link' => 'arithmetic-functions',
1019 'anchor' => 'operator_minus',
1022 'link' => 'arithmetic-functions',
1023 'anchor' => 'operator_times',
1026 'link' => 'logical-operators',
1027 'anchor' => 'operator_and',
1030 'link' => 'bit-functions',
1031 'anchor' => 'operator_bitwise-and',
1034 'link' => 'bit-functions',
1035 'anchor' => 'operator_bitwise-invert',
1038 'link' => 'bit-functions',
1039 'anchor' => 'operator_bitwise-or',
1042 'link' => 'bit-functions',
1043 'anchor' => 'operator_bitwise-xor',
1045 //FIXME:duplicated key "="
1047 'link' => 'assignment-operators',
1048 'anchor' => 'operator_assign-equal',
1051 'link' => 'assignment-operators',
1052 'anchor' => 'operator_assign-value',
1055 'link' => 'arithmetic-functions',
1056 'anchor' => 'operator_divide',
1059 'link' => 'comparison-operators',
1060 'anchor' => 'operator_equal-to',
1062 //FIXME:duplicated key "="
1064 'link' => 'comparison-operators',
1065 'anchor' => 'operator_equal',
1068 'link' => 'comparison-operators',
1069 'anchor' => 'operator_greater-than-or-equal',
1072 'link' => 'comparison-operators',
1073 'anchor' => 'operator_greater-than',
1076 'link' => 'bit-functions',
1077 'anchor' => 'operator_left-shift',
1080 'link' => 'comparison-operators',
1081 'anchor' => 'operator_less-than-or-equal',
1084 'link' => 'comparison-operators',
1085 'anchor' => 'operator_less-than',
1088 'link' => 'arithmetic-functions',
1089 'anchor' => 'operator_mod',
1094 * Documentation links for functions.
1096 $PMA_SQPdata_functions_docs = array(
1098 'link' => 'mathematical-functions',
1099 'anchor' => 'function_abs',
1102 'link' => 'mathematical-functions',
1103 'anchor' => 'function_acos',
1106 'link' => 'date-and-time-functions',
1107 'anchor' => 'function_adddate',
1110 'link' => 'date-and-time-functions',
1111 'anchor' => 'function_addtime',
1113 'AES_DECRYPT' => array(
1114 'link' => 'encryption-functions',
1115 'anchor' => 'function_aes_decrypt',
1117 'AES_ENCRYPT' => array(
1118 'link' => 'encryption-functions',
1119 'anchor' => 'function_aes_encrypt',
1122 'link' => 'logical-operators',
1123 'anchor' => 'operator_and',
1126 'link' => 'string-functions',
1127 'anchor' => 'function_ascii',
1130 'link' => 'mathematical-functions',
1131 'anchor' => 'function_asin',
1134 'link' => 'mathematical-functions',
1135 'anchor' => 'function_atan2',
1138 'link' => 'mathematical-functions',
1139 'anchor' => 'function_atan',
1142 'link' => 'group-by-functions',
1143 'anchor' => 'function_avg',
1145 'BENCHMARK' => array(
1146 'link' => 'information-functions',
1147 'anchor' => 'function_benchmark',
1150 'link' => 'string-functions',
1151 'anchor' => 'function_bin',
1154 'link' => 'cast-functions',
1155 'anchor' => 'operator_binary',
1158 'link' => 'group-by-functions',
1159 'anchor' => 'function_bit_and',
1161 'BIT_COUNT' => array(
1162 'link' => 'bit-functions',
1163 'anchor' => 'function_bit_count',
1165 'BIT_LENGTH' => array(
1166 'link' => 'string-functions',
1167 'anchor' => 'function_bit_length',
1170 'link' => 'group-by-functions',
1171 'anchor' => 'function_bit_or',
1174 'link' => 'group-by-functions',
1175 'anchor' => 'function_bit_xor',
1178 'link' => 'control-flow-functions',
1179 'anchor' => 'operator_case',
1182 'link' => 'cast-functions',
1183 'anchor' => 'function_cast',
1186 'link' => 'mathematical-functions',
1187 'anchor' => 'function_ceil',
1190 'link' => 'mathematical-functions',
1191 'anchor' => 'function_ceiling',
1193 'CHAR_LENGTH' => array(
1194 'link' => 'string-functions',
1195 'anchor' => 'function_char_length',
1198 'link' => 'string-functions',
1199 'anchor' => 'function_char',
1201 'CHARACTER_LENGTH' => array(
1202 'link' => 'string-functions',
1203 'anchor' => 'function_character_length',
1206 'link' => 'information-functions',
1207 'anchor' => 'function_charset',
1209 'COALESCE' => array(
1210 'link' => 'comparison-operators',
1211 'anchor' => 'function_coalesce',
1213 'COERCIBILITY' => array(
1214 'link' => 'information-functions',
1215 'anchor' => 'function_coercibility',
1217 'COLLATION' => array(
1218 'link' => 'information-functions',
1219 'anchor' => 'function_collation',
1221 'COMPRESS' => array(
1222 'link' => 'encryption-functions',
1223 'anchor' => 'function_compress',
1225 'CONCAT_WS' => array(
1226 'link' => 'string-functions',
1227 'anchor' => 'function_concat_ws',
1230 'link' => 'string-functions',
1231 'anchor' => 'function_concat',
1233 'CONNECTION_ID' => array(
1234 'link' => 'information-functions',
1235 'anchor' => 'function_connection_id',
1238 'link' => 'mathematical-functions',
1239 'anchor' => 'function_conv',
1241 'CONVERT_TZ' => array(
1242 'link' => 'date-and-time-functions',
1243 'anchor' => 'function_convert_tz',
1246 'link' => 'cast-functions',
1247 'anchor' => 'function_convert',
1250 'link' => 'mathematical-functions',
1251 'anchor' => 'function_cos',
1254 'link' => 'mathematical-functions',
1255 'anchor' => 'function_cot',
1258 'link' => 'group-by-functions',
1259 'anchor' => 'function_count',
1262 'link' => 'mathematical-functions',
1263 'anchor' => 'function_crc32',
1266 'link' => 'date-and-time-functions',
1267 'anchor' => 'function_curdate',
1269 'CURRENT_DATE' => array(
1270 'link' => 'date-and-time-functions',
1271 'anchor' => 'function_current_date',
1273 'CURRENT_TIME' => array(
1274 'link' => 'date-and-time-functions',
1275 'anchor' => 'function_current_time',
1277 'CURRENT_TIMESTAMP' => array(
1278 'link' => 'date-and-time-functions',
1279 'anchor' => 'function_current_timestamp',
1281 'CURRENT_USER' => array(
1282 'link' => 'information-functions',
1283 'anchor' => 'function_current_user',
1286 'link' => 'date-and-time-functions',
1287 'anchor' => 'function_curtime',
1289 'DATABASE' => array(
1290 'link' => 'information-functions',
1291 'anchor' => 'function_database',
1293 'DATE_ADD' => array(
1294 'link' => 'date-and-time-functions',
1295 'anchor' => 'function_date_add',
1297 'DATE_FORMAT' => array(
1298 'link' => 'date-and-time-functions',
1299 'anchor' => 'function_date_format',
1301 'DATE_SUB' => array(
1302 'link' => 'date-and-time-functions',
1303 'anchor' => 'function_date_sub',
1306 'link' => 'date-and-time-functions',
1307 'anchor' => 'function_date',
1309 'DATEDIFF' => array(
1310 'link' => 'date-and-time-functions',
1311 'anchor' => 'function_datediff',
1314 'link' => 'date-and-time-functions',
1315 'anchor' => 'function_day',
1318 'link' => 'date-and-time-functions',
1319 'anchor' => 'function_dayname',
1321 'DAYOFMONTH' => array(
1322 'link' => 'date-and-time-functions',
1323 'anchor' => 'function_dayofmonth',
1325 'DAYOFWEEK' => array(
1326 'link' => 'date-and-time-functions',
1327 'anchor' => 'function_dayofweek',
1329 'DAYOFYEAR' => array(
1330 'link' => 'date-and-time-functions',
1331 'anchor' => 'function_dayofyear',
1333 'DECLARE' => array('link' => 'declare', 'anchor' => 'declare'),
1335 'link' => 'encryption-functions',
1336 'anchor' => 'function_decode',
1339 'link' => 'miscellaneous-functions',
1340 'anchor' => 'function_default',
1343 'link' => 'mathematical-functions',
1344 'anchor' => 'function_degrees',
1346 'DES_DECRYPT' => array(
1347 'link' => 'encryption-functions',
1348 'anchor' => 'function_des_decrypt',
1350 'DES_ENCRYPT' => array(
1351 'link' => 'encryption-functions',
1352 'anchor' => 'function_des_encrypt',
1355 'link' => 'arithmetic-functions',
1356 'anchor' => 'operator_div',
1359 'link' => 'string-functions',
1360 'anchor' => 'function_elt',
1363 'link' => 'encryption-functions',
1364 'anchor' => 'function_encode',
1367 'link' => 'encryption-functions',
1368 'anchor' => 'function_encrypt',
1371 'link' => 'mathematical-functions',
1372 'anchor' => 'function_exp',
1374 'EXPORT_SET' => array(
1375 'link' => 'string-functions',
1376 'anchor' => 'function_export_set',
1379 'link' => 'date-and-time-functions',
1380 'anchor' => 'function_extract',
1382 'ExtractValue' => array(
1383 'link' => 'xml-functions',
1384 'anchor' => 'function_extractvalue',
1387 'link' => 'string-functions',
1388 'anchor' => 'function_field',
1390 'FIND_IN_SET' => array(
1391 'link' => 'string-functions',
1392 'anchor' => 'function_find_in_set',
1395 'link' => 'mathematical-functions',
1396 'anchor' => 'function_floor',
1399 'link' => 'string-functions',
1400 'anchor' => 'function_format',
1402 'FOUND_ROWS' => array(
1403 'link' => 'information-functions',
1404 'anchor' => 'function_found_rows',
1406 'FROM_DAYS' => array(
1407 'link' => 'date-and-time-functions',
1408 'anchor' => 'function_from_days',
1410 'FROM_UNIXTIME' => array(
1411 'link' => 'date-and-time-functions',
1412 'anchor' => 'function_from_unixtime',
1414 'GET_FORMAT' => array(
1415 'link' => 'date-and-time-functions',
1416 'anchor' => 'function_get_format',
1418 'GET_LOCK' => array(
1419 'link' => 'miscellaneous-functions',
1420 'anchor' => 'function_get_lock',
1422 'GREATEST' => array(
1423 'link' => 'comparison-operators',
1424 'anchor' => 'function_greatest',
1426 'GROUP_CONCAT' => array(
1427 'link' => 'group-by-functions',
1428 'anchor' => 'function_group_concat',
1431 'link' => 'string-functions',
1432 'anchor' => 'function_hex',
1435 'link' => 'date-and-time-functions',
1436 'anchor' => 'function_hour',
1439 'link' => 'control-flow-functions',
1440 'anchor' => 'function_if',
1443 'link' => 'control-flow-functions',
1444 'anchor' => 'function_ifnull',
1447 'link' => 'comparison-operators',
1448 'anchor' => 'function_in',
1450 'INET_ATON' => array(
1451 'link' => 'miscellaneous-functions',
1452 'anchor' => 'function_inet_aton',
1454 'INET_NTOA' => array(
1455 'link' => 'miscellaneous-functions',
1456 'anchor' => 'function_inet_ntoa',
1459 'link' => 'string-functions',
1460 'anchor' => 'function_insert',
1463 'link' => 'string-functions',
1464 'anchor' => 'function_instr',
1466 'INTERVAL' => array(
1467 'link' => 'comparison-operators',
1468 'anchor' => 'function_interval',
1470 'IS_FREE_LOCK' => array(
1471 'link' => 'miscellaneous-functions',
1472 'anchor' => 'function_is_free_lock',
1474 'IS_USED_LOCK' => array(
1475 'link' => 'miscellaneous-functions',
1476 'anchor' => 'function_is_used_lock',
1479 'link' => 'comparison-operators',
1480 'anchor' => 'operator_is',
1483 'link' => 'comparison-operators',
1484 'anchor' => 'function_isnull',
1486 'LAST_DAY' => array(
1487 'link' => 'date-and-time-functions',
1488 'anchor' => 'function_last_day',
1490 'LAST_INSERT_ID' => array(
1491 'link' => 'information-functions',
1492 'anchor' => 'function_last_insert_id',
1495 'link' => 'string-functions',
1496 'anchor' => 'function_lcase',
1499 'link' => 'comparison-operators',
1500 'anchor' => 'function_least',
1503 'link' => 'string-functions',
1504 'anchor' => 'function_left',
1507 'link' => 'string-functions',
1508 'anchor' => 'function_length',
1511 'link' => 'string-comparison-functions',
1512 'anchor' => 'operator_like',
1515 'link' => 'mathematical-functions',
1516 'anchor' => 'function_ln',
1518 'LOAD_FILE' => array(
1519 'link' => 'string-functions',
1520 'anchor' => 'function_load_file',
1522 'LOCALTIME' => array(
1523 'link' => 'date-and-time-functions',
1524 'anchor' => 'function_localtime',
1526 'LOCALTIMESTAMP' => array(
1527 'link' => 'date-and-time-functions',
1528 'anchor' => 'function_localtimestamp',
1531 'link' => 'string-functions',
1532 'anchor' => 'function_locate',
1535 'link' => 'mathematical-functions',
1536 'anchor' => 'function_log10',
1539 'link' => 'mathematical-functions',
1540 'anchor' => 'function_log2',
1543 'link' => 'mathematical-functions',
1544 'anchor' => 'function_log',
1547 'link' => 'string-functions',
1548 'anchor' => 'function_lower',
1551 'link' => 'string-functions',
1552 'anchor' => 'function_lpad',
1555 'link' => 'string-functions',
1556 'anchor' => 'function_ltrim',
1558 'MAKE_SET' => array(
1559 'link' => 'string-functions',
1560 'anchor' => 'function_make_set',
1562 'MAKEDATE' => array(
1563 'link' => 'date-and-time-functions',
1564 'anchor' => 'function_makedate',
1566 'MAKETIME' => array(
1567 'link' => 'date-and-time-functions',
1568 'anchor' => 'function_maketime',
1570 'MASTER_POS_WAIT' => array(
1571 'link' => 'miscellaneous-functions',
1572 'anchor' => 'function_master_pos_wait',
1575 'link' => 'fulltext-search',
1576 'anchor' => 'function_match',
1579 'link' => 'group-by-functions',
1580 'anchor' => 'function_max',
1583 'link' => 'encryption-functions',
1584 'anchor' => 'function_md5',
1586 'MICROSECOND' => array(
1587 'link' => 'date-and-time-functions',
1588 'anchor' => 'function_microsecond',
1591 'link' => 'string-functions',
1592 'anchor' => 'function_mid',
1595 'link' => 'group-by-functions',
1596 'anchor' => 'function_min',
1599 'link' => 'date-and-time-functions',
1600 'anchor' => 'function_minute',
1603 'link' => 'mathematical-functions',
1604 'anchor' => 'function_mod',
1607 'link' => 'date-and-time-functions',
1608 'anchor' => 'function_month',
1610 'MONTHNAME' => array(
1611 'link' => 'date-and-time-functions',
1612 'anchor' => 'function_monthname',
1614 'NAME_CONST' => array(
1615 'link' => 'miscellaneous-functions',
1616 'anchor' => 'function_name_const',
1619 'link' => 'logical-operators',
1620 'anchor' => 'operator_not',
1623 'link' => 'date-and-time-functions',
1624 'anchor' => 'function_now',
1627 'link' => 'control-flow-functions',
1628 'anchor' => 'function_nullif',
1631 'link' => 'mathematical-functions',
1632 'anchor' => 'function_oct',
1634 'OCTET_LENGTH' => array(
1635 'link' => 'string-functions',
1636 'anchor' => 'function_octet_length',
1638 'OLD_PASSWORD' => array(
1639 'link' => 'encryption-functions',
1640 'anchor' => 'function_old_password',
1643 'link' => 'logical-operators',
1644 'anchor' => 'operator_or',
1647 'link' => 'string-functions',
1648 'anchor' => 'function_ord',
1650 'PASSWORD' => array(
1651 'link' => 'encryption-functions',
1652 'anchor' => 'function_password',
1654 'PERIOD_ADD' => array(
1655 'link' => 'date-and-time-functions',
1656 'anchor' => 'function_period_add',
1658 'PERIOD_DIFF' => array(
1659 'link' => 'date-and-time-functions',
1660 'anchor' => 'function_period_diff',
1663 'link' => 'mathematical-functions',
1664 'anchor' => 'function_pi',
1666 'POSITION' => array(
1667 'link' => 'string-functions',
1668 'anchor' => 'function_position',
1671 'link' => 'mathematical-functions',
1672 'anchor' => 'function_pow',
1675 'link' => 'mathematical-functions',
1676 'anchor' => 'function_power',
1679 'link' => 'date-and-time-functions',
1680 'anchor' => 'function_quarter',
1683 'link' => 'string-functions',
1684 'anchor' => 'function_quote',
1687 'link' => 'mathematical-functions',
1688 'anchor' => 'function_radians',
1691 'link' => 'mathematical-functions',
1692 'anchor' => 'function_rand',
1696 'anchor' => 'operator_regexp',
1698 'RELEASE_LOCK' => array(
1699 'link' => 'miscellaneous-functions',
1700 'anchor' => 'function_release_lock',
1703 'link' => 'string-functions',
1704 'anchor' => 'function_repeat',
1707 'link' => 'string-functions',
1708 'anchor' => 'function_replace',
1711 'link' => 'string-functions',
1712 'anchor' => 'function_reverse',
1715 'link' => 'string-functions',
1716 'anchor' => 'function_right',
1720 'anchor' => 'operator_rlike',
1723 'link' => 'mathematical-functions',
1724 'anchor' => 'function_round',
1726 'ROW_COUNT' => array(
1727 'link' => 'information-functions',
1728 'anchor' => 'function_row_count',
1731 'link' => 'string-functions',
1732 'anchor' => 'function_rpad',
1735 'link' => 'string-functions',
1736 'anchor' => 'function_rtrim',
1739 'link' => 'information-functions',
1740 'anchor' => 'function_schema',
1742 'SEC_TO_TIME' => array(
1743 'link' => 'date-and-time-functions',
1744 'anchor' => 'function_sec_to_time',
1747 'link' => 'date-and-time-functions',
1748 'anchor' => 'function_second',
1750 'SESSION_USER' => array(
1751 'link' => 'information-functions',
1752 'anchor' => 'function_session_user',
1755 'link' => 'encryption-functions',
1756 'anchor' => 'function_sha1',
1759 'link' => 'encryption-functions',
1760 'anchor' => 'function_sha1',
1763 'link' => 'mathematical-functions',
1764 'anchor' => 'function_sign',
1767 'link' => 'mathematical-functions',
1768 'anchor' => 'function_sin',
1771 'link' => 'miscellaneous-functions',
1772 'anchor' => 'function_sleep',
1775 'link' => 'string-functions',
1776 'anchor' => 'function_soundex',
1779 'link' => 'string-functions',
1780 'anchor' => 'function_space',
1783 'link' => 'mathematical-functions',
1784 'anchor' => 'function_sqrt',
1787 'link' => 'group-by-functions',
1788 'anchor' => 'function_std',
1790 'STDDEV_POP' => array(
1791 'link' => 'group-by-functions',
1792 'anchor' => 'function_stddev_pop',
1794 'STDDEV_SAMP' => array(
1795 'link' => 'group-by-functions',
1796 'anchor' => 'function_stddev_samp',
1799 'link' => 'group-by-functions',
1800 'anchor' => 'function_stddev',
1802 'STR_TO_DATE' => array(
1803 'link' => 'date-and-time-functions',
1804 'anchor' => 'function_str_to_date',
1807 'link' => 'string-comparison-functions',
1808 'anchor' => 'function_strcmp',
1811 'link' => 'date-and-time-functions',
1812 'anchor' => 'function_subdate',
1815 'link' => 'string-functions',
1816 'anchor' => 'function_substr',
1818 'SUBSTRING_INDEX' => array(
1819 'link' => 'string-functions',
1820 'anchor' => 'function_substring_index',
1822 'SUBSTRING' => array(
1823 'link' => 'string-functions',
1824 'anchor' => 'function_substring',
1827 'link' => 'date-and-time-functions',
1828 'anchor' => 'function_subtime',
1831 'link' => 'group-by-functions',
1832 'anchor' => 'function_sum',
1835 'link' => 'date-and-time-functions',
1836 'anchor' => 'function_sysdate',
1838 'SYSTEM_USER' => array(
1839 'link' => 'information-functions',
1840 'anchor' => 'function_system_user',
1843 'link' => 'mathematical-functions',
1844 'anchor' => 'function_tan',
1846 'TIME_FORMAT' => array(
1847 'link' => 'date-and-time-functions',
1848 'anchor' => 'function_time_format',
1850 'TIME_TO_SEC' => array(
1851 'link' => 'date-and-time-functions',
1852 'anchor' => 'function_time_to_sec',
1855 'link' => 'date-and-time-functions',
1856 'anchor' => 'function_time',
1858 'TIMEDIFF' => array(
1859 'link' => 'date-and-time-functions',
1860 'anchor' => 'function_timediff',
1862 'TIMESTAMP' => array(
1863 'link' => 'date-and-time-functions',
1864 'anchor' => 'function_timestamp',
1866 'TIMESTAMPADD' => array(
1867 'link' => 'date-and-time-functions',
1868 'anchor' => 'function_timestampadd',
1870 'TIMESTAMPDIFF' => array(
1871 'link' => 'date-and-time-functions',
1872 'anchor' => 'function_timestampdiff',
1875 'link' => 'date-and-time-functions',
1876 'anchor' => 'function_to_days',
1879 'link' => 'string-functions',
1880 'anchor' => 'function_trim',
1882 'TRUNCATE' => array(
1883 'link' => 'mathematical-functions',
1884 'anchor' => 'function_truncate',
1887 'link' => 'string-functions',
1888 'anchor' => 'function_ucase',
1890 'UNCOMPRESS' => array(
1891 'link' => 'encryption-functions',
1892 'anchor' => 'function_uncompress',
1894 'UNCOMPRESSED_LENGTH' => array(
1895 'link' => 'encryption-functions',
1896 'anchor' => 'function_uncompressed_length',
1899 'link' => 'string-functions',
1900 'anchor' => 'function_unhex',
1902 'UNIX_TIMESTAMP' => array(
1903 'link' => 'date-and-time-functions',
1904 'anchor' => 'function_unix_timestamp',
1906 'UpdateXML' => array(
1907 'link' => 'xml-functions',
1908 'anchor' => 'function_updatexml',
1911 'link' => 'string-functions',
1912 'anchor' => 'function_upper',
1915 'link' => 'information-functions',
1916 'anchor' => 'function_user',
1918 'UTC_DATE' => array(
1919 'link' => 'date-and-time-functions',
1920 'anchor' => 'function_utc_date',
1922 'UTC_TIME' => array(
1923 'link' => 'date-and-time-functions',
1924 'anchor' => 'function_utc_time',
1926 'UTC_TIMESTAMP' => array(
1927 'link' => 'date-and-time-functions',
1928 'anchor' => 'function_utc_timestamp',
1930 'UUID_SHORT' => array(
1931 'link' => 'miscellaneous-functions',
1932 'anchor' => 'function_uuid_short',
1935 'link' => 'miscellaneous-functions',
1936 'anchor' => 'function_uuid',
1939 'link' => 'miscellaneous-functions',
1940 'anchor' => 'function_values',
1943 'link' => 'group-by-functions',
1944 'anchor' => 'function_var_pop',
1946 'VAR_SAMP' => array(
1947 'link' => 'group-by-functions',
1948 'anchor' => 'function_var_samp',
1950 'VARIANCE' => array(
1951 'link' => 'group-by-functions',
1952 'anchor' => 'function_variance',
1955 'link' => 'information-functions',
1956 'anchor' => 'function_version',
1959 'link' => 'date-and-time-functions',
1960 'anchor' => 'function_week',
1963 'link' => 'date-and-time-functions',
1964 'anchor' => 'function_weekday',
1966 'WEEKOFYEAR' => array(
1967 'link' => 'date-and-time-functions',
1968 'anchor' => 'function_weekofyear',
1971 'link' => 'logical-operators',
1972 'anchor' => 'operator_xor',
1975 'link' => 'date-and-time-functions',
1976 'anchor' => 'function_year',
1978 'YEARWEEK' => array(
1979 'link' => 'date-and-time-functions',
1980 'anchor' => 'function_yearweek',
1982 'SOUNDS_LIKE' => array(
1983 'link' => 'string-functions',
1984 'anchor' => 'operator_sounds-like',
1986 'IS_NOT_NULL' => array(
1987 'link' => 'comparison-operators',
1988 'anchor' => 'operator_is-not-null',
1991 'link' => 'comparison-operators',
1992 'anchor' => 'operator_is-not',
1995 'link' => 'comparison-operators',
1996 'anchor' => 'operator_is-null',
1998 'NOT_LIKE' => array(
1999 'link' => 'string-comparison-functions',
2000 'anchor' => 'operator_not-like',
2002 'NOT_REGEXP' => array(
2004 'anchor' => 'operator_not-regexp',
2006 'COUNT_DISTINCT' => array(
2007 'link' => 'group-by-functions',
2008 'anchor' => 'function_count-distinct',
2011 'link' => 'comparison-operators',
2012 'anchor' => 'function_not-in',