sqlparser.data.php 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016
  1. <?php
  2. /* vim: set expandtab sw=4 ts=4 sts=4: */
  3. /**
  4. * SQL Parser Matching Data
  5. *
  6. * Copyright 2002 Robin Johnson <robbat2@users.sourceforge.net>
  7. * http://www.orbis-terrarum.net/?l=people.robbat2
  8. *
  9. * This data is used by the SQL Parser to recognize keywords
  10. *
  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.
  13. *
  14. * It's easier to use only uppercase for proper sorting. In case of
  15. * doubt, use the test case to verify.
  16. *
  17. * @package PhpMyAdmin
  18. */
  19. if (! defined('PHPMYADMIN')) {
  20. exit;
  21. }
  22. if (! isset($GLOBALS['sql_delimiter'])) {
  23. $GLOBALS['sql_delimiter'] = ';';
  24. }
  25. /**
  26. * @global array MySQL function names
  27. */
  28. $PMA_SQPdata_function_name = array (
  29. 'ABS',
  30. 'ACOS',
  31. 'ADDDATE',
  32. 'ADDTIME',
  33. 'AES_DECRYPT',
  34. 'AES_ENCRYPT',
  35. 'AREA', // polygon-property-functions.html
  36. 'ASBINARY',
  37. 'ASCII',
  38. 'ASIN',
  39. 'ASTEXT',
  40. 'ATAN',
  41. 'ATAN2',
  42. 'AVG',
  43. 'BDMPOLYFROMTEXT',
  44. 'BDMPOLYFROMWKB',
  45. 'BDPOLYFROMTEXT',
  46. 'BDPOLYFROMWKB',
  47. 'BENCHMARK',
  48. 'BIN',
  49. 'BIT_AND',
  50. 'BIT_COUNT',
  51. 'BIT_LENGTH',
  52. 'BIT_OR',
  53. 'BIT_XOR', // group-by-functions.html
  54. 'BOUNDARY', // general-geometry-property-functions.html
  55. 'BUFFER',
  56. 'CAST',
  57. 'CEIL',
  58. 'CEILING',
  59. 'CENTROID', // multipolygon-property-functions.html
  60. 'CHAR', // string-functions.html
  61. 'CHARACTER_LENGTH',
  62. 'CHARSET', // information-functions.html
  63. 'CHAR_LENGTH',
  64. 'COALESCE',
  65. 'COERCIBILITY', // information-functions.html
  66. 'COLLATION', // information-functions.html
  67. 'COMPRESS', // string-functions.html
  68. 'CONCAT',
  69. 'CONCAT_WS',
  70. 'CONNECTION_ID',
  71. 'CONTAINS',
  72. 'CONV',
  73. 'CONVERT',
  74. 'CONVERT_TZ',
  75. 'CONVEXHULL',
  76. 'COS',
  77. 'COT',
  78. 'COUNT',
  79. 'CRC32', // mathematical-functions.html
  80. 'CROSSES',
  81. 'CURDATE',
  82. 'CURRENT_DATE',
  83. 'CURRENT_TIME',
  84. 'CURRENT_TIMESTAMP',
  85. 'CURRENT_USER',
  86. 'CURTIME',
  87. 'DATABASE',
  88. 'DATE', // date-and-time-functions.html
  89. 'DATEDIFF', // date-and-time-functions.html
  90. 'DATE_ADD',
  91. 'DATE_DIFF',
  92. 'DATE_FORMAT',
  93. 'DATE_SUB',
  94. 'DAY',
  95. 'DAYNAME',
  96. 'DAYOFMONTH',
  97. 'DAYOFWEEK',
  98. 'DAYOFYEAR',
  99. 'DECODE',
  100. 'DEFAULT', // miscellaneous-functions.html
  101. 'DEGREES',
  102. 'DES_DECRYPT',
  103. 'DES_ENCRYPT',
  104. 'DIFFERENCE',
  105. 'DIMENSION', // general-geometry-property-functions.html
  106. 'DISJOINT',
  107. 'DISTANCE',
  108. 'ELT',
  109. 'ENCODE',
  110. 'ENCRYPT',
  111. 'ENDPOINT', // linestring-property-functions.html
  112. 'ENVELOPE', // general-geometry-property-functions.html
  113. 'EQUALS',
  114. 'EXP',
  115. 'EXPORT_SET',
  116. 'EXTERIORRING', // polygon-property-functions.html
  117. 'EXTRACT',
  118. 'EXTRACTVALUE', // xml-functions.html
  119. 'FIELD',
  120. 'FIND_IN_SET',
  121. 'FLOOR',
  122. 'FORMAT',
  123. 'FOUND_ROWS',
  124. 'FROM_DAYS',
  125. 'FROM_UNIXTIME',
  126. 'GEOMCOLLFROMTEXT',
  127. 'GEOMCOLLFROMWKB',
  128. 'GEOMETRYCOLLECTION',
  129. 'GEOMETRYCOLLECTIONFROMTEXT',
  130. 'GEOMETRYCOLLECTIONFROMWKB',
  131. 'GEOMETRYFROMTEXT',
  132. 'GEOMETRYFROMWKB',
  133. 'GEOMETRYN', // geometrycollection-property-functions.html
  134. 'GEOMETRYTYPE', // general-geometry-property-functions.html
  135. 'GEOMFROMTEXT',
  136. 'GEOMFROMWKB',
  137. 'GET_FORMAT',
  138. 'GET_LOCK',
  139. 'GLENGTH', // linestring-property-functions.html
  140. 'GREATEST',
  141. 'GROUP_CONCAT',
  142. 'GROUP_UNIQUE_USERS',
  143. 'HEX',
  144. 'HOUR',
  145. 'IF', //control-flow-functions.html
  146. 'IFNULL',
  147. 'INET_ATON',
  148. 'INET_NTOA',
  149. 'INSERT', // string-functions.html
  150. 'INSTR',
  151. 'INTERIORRINGN', // polygon-property-functions.html
  152. 'INTERSECTION',
  153. 'INTERSECTS',
  154. 'INTERVAL',
  155. 'ISCLOSED', // multilinestring-property-functions.html
  156. 'ISEMPTY', // general-geometry-property-functions.html
  157. 'ISNULL',
  158. 'ISRING', // linestring-property-functions.html
  159. 'ISSIMPLE', // general-geometry-property-functions.html
  160. 'IS_FREE_LOCK',
  161. 'IS_USED_LOCK', // miscellaneous-functions.html
  162. 'LAST_DAY',
  163. 'LAST_INSERT_ID',
  164. 'LCASE',
  165. 'LEAST',
  166. 'LEFT',
  167. 'LENGTH',
  168. 'LINEFROMTEXT',
  169. 'LINEFROMWKB',
  170. 'LINESTRING',
  171. 'LINESTRINGFROMTEXT',
  172. 'LINESTRINGFROMWKB',
  173. 'LN',
  174. 'LOAD_FILE',
  175. 'LOCALTIME',
  176. 'LOCALTIMESTAMP',
  177. 'LOCATE',
  178. 'LOG',
  179. 'LOG10',
  180. 'LOG2',
  181. 'LOWER',
  182. 'LPAD',
  183. 'LTRIM',
  184. 'MAKEDATE',
  185. 'MAKETIME',
  186. 'MAKE_SET',
  187. 'MASTER_POS_WAIT',
  188. 'MAX',
  189. 'MBRCONTAINS',
  190. 'MBRDISJOINT',
  191. 'MBREQUAL',
  192. 'MBRINTERSECTS',
  193. 'MBROVERLAPS',
  194. 'MBRTOUCHES',
  195. 'MBRWITHIN',
  196. 'MD5',
  197. 'MICROSECOND',
  198. 'MID',
  199. 'MIN',
  200. 'MINUTE',
  201. 'MLINEFROMTEXT',
  202. 'MLINEFROMWKB',
  203. 'MOD',
  204. 'MONTH',
  205. 'MONTHNAME',
  206. 'MPOINTFROMTEXT',
  207. 'MPOINTFROMWKB',
  208. 'MPOLYFROMTEXT',
  209. 'MPOLYFROMWKB',
  210. 'MULTILINESTRING',
  211. 'MULTILINESTRINGFROMTEXT',
  212. 'MULTILINESTRINGFROMWKB',
  213. 'MULTIPOINT',
  214. 'MULTIPOINTFROMTEXT',
  215. 'MULTIPOINTFROMWKB',
  216. 'MULTIPOLYGON',
  217. 'MULTIPOLYGONFROMTEXT',
  218. 'MULTIPOLYGONFROMWKB',
  219. 'NAME_CONST', // NAME_CONST()
  220. 'NOW',
  221. 'NULLIF',
  222. 'NUMGEOMETRIES', // geometrycollection-property-functions.html
  223. 'NUMINTERIORRINGS', // polygon-property-functions.html
  224. 'NUMPOINTS', // linestring-property-functions.html
  225. 'OCT',
  226. 'OCTET_LENGTH',
  227. 'OLD_PASSWORD',
  228. 'ORD',
  229. 'OVERLAPS',
  230. 'PASSWORD',
  231. 'PERIOD_ADD',
  232. 'PERIOD_DIFF',
  233. 'PI',
  234. 'POINT',
  235. 'POINTFROMTEXT',
  236. 'POINTFROMWKB',
  237. 'POINTN', // inestring-property-functions.html
  238. 'POINTONSURFACE', // multipolygon-property-functions.html
  239. 'POLYFROMTEXT',
  240. 'POLYFROMWKB',
  241. 'POLYGON',
  242. 'POLYGONFROMTEXT',
  243. 'POLYGONFROMWKB',
  244. 'POSITION',
  245. 'POW',
  246. 'POWER',
  247. 'QUARTER',
  248. 'QUOTE',
  249. 'RADIANS',
  250. 'RAND',
  251. 'RELATED',
  252. 'RELEASE_LOCK',
  253. 'REPEAT',
  254. 'REPLACE', // string-functions.html
  255. 'REVERSE',
  256. 'RIGHT',
  257. 'ROUND',
  258. 'ROW_COUNT', // information-functions.html
  259. 'RPAD',
  260. 'RTRIM',
  261. 'SCHEMA', // information-functions.html
  262. 'SECOND',
  263. 'SEC_TO_TIME',
  264. 'SESSION_USER',
  265. 'SHA',
  266. 'SHA1',
  267. 'SIGN',
  268. 'SIN',
  269. 'SLEEP', // miscellaneous-functions.html
  270. 'SOUNDEX',
  271. 'SPACE',
  272. 'SQRT',
  273. 'SRID', // general-geometry-property-functions.html
  274. 'STARTPOINT', // linestring-property-functions.html
  275. 'STD',
  276. 'STDDEV',
  277. 'STDDEV_POP', // group-by-functions.html
  278. 'STDDEV_SAMP', // group-by-functions.html
  279. 'STRCMP',
  280. 'STR_TO_DATE',
  281. 'SUBDATE',
  282. 'SUBSTR',
  283. 'SUBSTRING',
  284. 'SUBSTRING_INDEX',
  285. 'SUBTIME',
  286. 'SUM',
  287. 'SYMDIFFERENCE',
  288. 'SYSDATE',
  289. 'SYSTEM_USER',
  290. 'TAN',
  291. 'TIME',
  292. 'TIMEDIFF',
  293. 'TIMESTAMP',
  294. 'TIMESTAMPADD',
  295. 'TIMESTAMPDIFF',
  296. 'TIME_FORMAT',
  297. 'TIME_TO_SEC',
  298. 'TOUCHES',
  299. 'TO_DAYS',
  300. 'TRIM',
  301. 'TRUNCATE', // mathematical-functions.html
  302. 'UCASE',
  303. 'UNCOMPRESS', // string-functions.html
  304. 'UNCOMPRESSED_LENGTH', // string-functions.html
  305. 'UNHEX', // string-functions.html
  306. 'UNIQUE_USERS',
  307. 'UNIX_TIMESTAMP',
  308. 'UPDATEXML', // xml-functions.html
  309. 'UPPER',
  310. 'USER',
  311. 'UTC_DATE',
  312. 'UTC_TIME',
  313. 'UTC_TIMESTAMP',
  314. 'UUID', // miscellaneous-functions.html
  315. 'VARIANCE', // group-by-functions.html
  316. 'VAR_POP', // group-by-functions.html
  317. 'VAR_SAMP', // group-by-functions.html
  318. 'VERSION',
  319. 'WEEK',
  320. 'WEEKDAY',
  321. 'WEEKOFYEAR',
  322. 'WITHIN',
  323. 'X', // point-property-functions.html
  324. 'Y', // point-property-functions.html
  325. 'YEAR',
  326. 'YEARWEEK'
  327. );
  328. /**
  329. * @global array MySQL attributes
  330. */
  331. $PMA_SQPdata_column_attrib = array (
  332. 'ARCHIVE', // Engine
  333. 'ASCII',
  334. 'AUTO_INCREMENT',
  335. 'BDB', // Engine
  336. 'BERKELEYDB', // Engine alias BDB
  337. 'BINARY',
  338. 'BLACKHOLE', // Engine
  339. 'CSV', // Engine
  340. 'DEFAULT',
  341. 'EXAMPLE', // Engine
  342. 'FEDERATED', // Engine
  343. 'HEAP', // Engine
  344. 'INNOBASE', // Engine alias InnoDB
  345. 'INNODB', // Engine InnoDB
  346. 'ISAM', // Engine
  347. 'MARIA', // Engine
  348. 'MEMORY', // Engine alias HEAP, but preferred
  349. 'MERGE', // Engine
  350. 'MRG_ISAM', // Engine
  351. 'MRG_MYISAM', // Engine alias MERGE
  352. 'MYISAM', // Engine MyISAM
  353. 'NATIONAL',
  354. 'NDB', // Engine alias NDBCLUSTER
  355. 'NDBCLUSTER', // Engine
  356. 'PRECISION',
  357. 'UNDEFINED',
  358. 'UNICODE',
  359. 'UNSIGNED',
  360. 'VARYING',
  361. 'ZEROFILL'
  362. );
  363. /**
  364. * words that are reserved by MySQL and may not be used as identifiers without
  365. * quotes
  366. *
  367. * @see http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
  368. *
  369. * @global array MySQL reserved words
  370. */
  371. $PMA_SQPdata_reserved_word = array (
  372. 'ACCESSIBLE', // 5.1
  373. 'ACTION',
  374. 'ADD',
  375. 'AFTER',
  376. 'AGAINST',
  377. 'AGGREGATE',
  378. 'ALGORITHM',
  379. 'ALL',
  380. 'ALTER',
  381. 'ANALYSE',
  382. 'ANALYZE',
  383. 'AND',
  384. 'AS',
  385. 'ASC',
  386. 'AUTOCOMMIT',
  387. 'AUTO_INCREMENT',
  388. 'AVG_ROW_LENGTH',
  389. 'BACKUP',
  390. 'BEGIN',
  391. 'BETWEEN',
  392. 'BINLOG',
  393. 'BOTH',
  394. 'BY',
  395. 'CASCADE',
  396. 'CASE',
  397. 'CHANGE',
  398. 'CHANGED',
  399. 'CHARSET',
  400. 'CHECK',
  401. 'CHECKSUM',
  402. 'COLLATE',
  403. 'COLLATION',
  404. 'COLUMN',
  405. 'COLUMNS',
  406. 'COMMENT',
  407. 'COMMIT',
  408. 'COMMITTED',
  409. 'COMPRESSED',
  410. 'CONCURRENT',
  411. 'CONSTRAINT',
  412. 'CONTAINS',
  413. 'CONVERT',
  414. 'CREATE',
  415. 'CROSS',
  416. 'CURRENT_TIMESTAMP',
  417. 'DATABASE',
  418. 'DATABASES',
  419. 'DAY',
  420. 'DAY_HOUR',
  421. 'DAY_MINUTE',
  422. 'DAY_SECOND',
  423. 'DECLARE',
  424. 'DEFINER',
  425. 'DELAYED',
  426. 'DELAY_KEY_WRITE',
  427. 'DELETE',
  428. 'DESC',
  429. 'DESCRIBE',
  430. 'DETERMINISTIC',
  431. 'DISTINCT',
  432. 'DISTINCTROW',
  433. 'DIV',
  434. 'DO',
  435. 'DROP',
  436. 'DUMPFILE',
  437. 'DUPLICATE',
  438. 'DYNAMIC',
  439. 'ELSE',
  440. 'ENCLOSED',
  441. 'END',
  442. 'ENGINE',
  443. 'ENGINES',
  444. 'ESCAPE',
  445. 'ESCAPED',
  446. 'EVENTS',
  447. 'EXECUTE',
  448. 'EXISTS',
  449. 'EXPLAIN',
  450. 'EXTENDED',
  451. 'FALSE',
  452. 'FAST',
  453. 'FIELDS',
  454. 'FILE',
  455. 'FIRST',
  456. 'FIXED',
  457. 'FLUSH',
  458. 'FOR',
  459. 'FORCE',
  460. 'FOREIGN',
  461. 'FROM',
  462. 'FULL',
  463. 'FULLTEXT',
  464. 'FUNCTION',
  465. 'GEMINI',
  466. 'GEMINI_SPIN_RETRIES',
  467. 'GENERAL',
  468. 'GLOBAL',
  469. 'GRANT',
  470. 'GRANTS',
  471. 'GROUP',
  472. 'HAVING',
  473. 'HEAP',
  474. 'HIGH_PRIORITY',
  475. 'HOSTS',
  476. 'HOUR',
  477. 'HOUR_MINUTE',
  478. 'HOUR_SECOND',
  479. 'IDENTIFIED',
  480. 'IF',
  481. 'IGNORE',
  482. 'IGNORE_SERVER_IDS',
  483. 'IN',
  484. 'INDEX',
  485. 'INDEXES',
  486. 'INFILE',
  487. 'INNER',
  488. 'INSERT',
  489. 'INSERT_ID',
  490. 'INSERT_METHOD',
  491. 'INTERVAL',
  492. 'INTO',
  493. 'INVOKER',
  494. 'IS',
  495. 'ISOLATION',
  496. 'JOIN',
  497. 'KEY',
  498. 'KEYS',
  499. 'KILL',
  500. 'LAST_INSERT_ID',
  501. 'LEADING',
  502. 'LEFT',
  503. 'LIKE',
  504. 'LIMIT',
  505. 'LINEAR', // 5.1
  506. 'LINES',
  507. 'LOAD',
  508. 'LOCAL',
  509. 'LOCK',
  510. 'LOCKS',
  511. 'LOGS',
  512. 'LOW_PRIORITY',
  513. 'MARIA', // 5.1 ?
  514. 'MASTER_CONNECT_RETRY',
  515. 'MASTER_HEARTBEAT_PERIOD',
  516. 'MASTER_HOST',
  517. 'MASTER_LOG_FILE',
  518. 'MASTER_LOG_POS',
  519. 'MASTER_PASSWORD',
  520. 'MASTER_PORT',
  521. 'MASTER_USER',
  522. 'MATCH',
  523. 'MAXVALUE',
  524. 'MAX_CONNECTIONS_PER_HOUR',
  525. 'MAX_QUERIES_PER_HOUR',
  526. 'MAX_ROWS',
  527. 'MAX_UPDATES_PER_HOUR',
  528. 'MAX_USER_CONNECTIONS',
  529. 'MEDIUM',
  530. 'MERGE',
  531. 'MINUTE',
  532. 'MINUTE_SECOND',
  533. 'MIN_ROWS',
  534. 'MODE',
  535. 'MODIFY',
  536. 'MONTH',
  537. 'MRG_MYISAM',
  538. 'MYISAM',
  539. 'NAMES',
  540. 'NATURAL',
  541. // 'NO' is not allowed in SQL-99 but is allowed in MySQL
  542. //'NO',
  543. 'NOT',
  544. 'NULL',
  545. 'OFFSET',
  546. 'ON',
  547. 'OPEN',
  548. 'OPTIMIZE',
  549. 'OPTION',
  550. 'OPTIONALLY',
  551. 'OR',
  552. 'ORDER',
  553. 'OUTER',
  554. 'OUTFILE',
  555. 'PACK_KEYS',
  556. 'PAGE', // 5.1-maria ?
  557. 'PAGE_CHECKSUM', // 5.1
  558. 'PARTIAL',
  559. 'PARTITION', // 5.1
  560. 'PARTITIONS', // 5.1
  561. 'PASSWORD',
  562. 'PRIMARY',
  563. 'PRIVILEGES',
  564. 'PROCEDURE',
  565. 'PROCESS',
  566. 'PROCESSLIST',
  567. 'PURGE',
  568. 'QUICK',
  569. 'RAID0',
  570. 'RAID_CHUNKS',
  571. 'RAID_CHUNKSIZE',
  572. 'RAID_TYPE',
  573. 'RANGE', // 5.1
  574. 'READ',
  575. 'READ_ONLY', // 5.1
  576. 'READ_WRITE', // 5.1
  577. 'REFERENCES',
  578. 'REGEXP',
  579. 'RELOAD',
  580. 'RENAME',
  581. 'REPAIR',
  582. 'REPEATABLE',
  583. 'REPLACE',
  584. 'REPLICATION',
  585. 'RESET',
  586. 'RESIGNAL',
  587. 'RESTORE',
  588. 'RESTRICT',
  589. 'RETURN',
  590. 'RETURNS',
  591. 'REVOKE',
  592. 'RIGHT',
  593. 'RLIKE',
  594. 'ROLLBACK',
  595. 'ROW',
  596. 'ROWS',
  597. 'ROW_FORMAT',
  598. 'SECOND',
  599. 'SECURITY',
  600. 'SELECT',
  601. 'SEPARATOR',
  602. 'SERIALIZABLE',
  603. 'SESSION',
  604. 'SHARE',
  605. 'SHOW',
  606. 'SHUTDOWN',
  607. 'SIGNAL',
  608. 'SLAVE',
  609. 'SLOW',
  610. 'SONAME',
  611. 'SOUNDS', // string-functions.html
  612. 'SQL',
  613. 'SQL_AUTO_IS_NULL',
  614. 'SQL_BIG_RESULT',
  615. 'SQL_BIG_SELECTS',
  616. 'SQL_BIG_TABLES',
  617. 'SQL_BUFFER_RESULT',
  618. 'SQL_CACHE',
  619. 'SQL_CALC_FOUND_ROWS',
  620. 'SQL_LOG_BIN',
  621. 'SQL_LOG_OFF',
  622. 'SQL_LOG_UPDATE',
  623. 'SQL_LOW_PRIORITY_UPDATES',
  624. 'SQL_MAX_JOIN_SIZE',
  625. 'SQL_NO_CACHE',
  626. 'SQL_QUOTE_SHOW_CREATE',
  627. 'SQL_SAFE_UPDATES',
  628. 'SQL_SELECT_LIMIT',
  629. 'SQL_SLAVE_SKIP_COUNTER',
  630. 'SQL_SMALL_RESULT',
  631. 'SQL_WARNINGS',
  632. 'START',
  633. 'STARTING',
  634. 'STATUS',
  635. 'STOP',
  636. 'STORAGE',
  637. 'STRAIGHT_JOIN',
  638. 'STRING',
  639. 'STRIPED',
  640. 'SUPER',
  641. 'TABLE',
  642. 'TABLES',
  643. 'TEMPORARY',
  644. 'TERMINATED',
  645. 'THEN',
  646. 'TO',
  647. 'TRAILING',
  648. 'TRANSACTIONAL', // 5.1 ?
  649. 'TRUE',
  650. 'TRUNCATE',
  651. 'TYPE',
  652. 'TYPES',
  653. 'UNCOMMITTED',
  654. 'UNION',
  655. 'UNIQUE',
  656. 'UNLOCK',
  657. 'UPDATE',
  658. 'USAGE',
  659. 'USE',
  660. 'USING',
  661. 'VALUES',
  662. 'VARIABLES',
  663. 'VIEW',
  664. 'WHEN',
  665. 'WHERE',
  666. 'WITH',
  667. 'WORK',
  668. 'WRITE',
  669. 'XOR',
  670. 'YEAR_MONTH'
  671. );
  672. /**
  673. * words forbidden to be used as column or table name without quotes
  674. * as seen in http://dev.mysql.com/doc/refman/5.6/en/reserved-words.html
  675. *
  676. * @global array MySQL forbidden words
  677. */
  678. $PMA_SQPdata_forbidden_word = array (
  679. 'ACCESSIBLE',
  680. 'ADD',
  681. 'ALL',
  682. 'ALTER',
  683. 'ANALYZE',
  684. 'AND',
  685. 'AS',
  686. 'ASC',
  687. 'ASENSITIVE',
  688. 'BEFORE',
  689. 'BETWEEN',
  690. 'BIGINT',
  691. 'BINARY',
  692. 'BLOB',
  693. 'BOTH',
  694. 'BY',
  695. 'CALL',
  696. 'CASCADE',
  697. 'CASE',
  698. 'CHANGE',
  699. 'CHAR',
  700. 'CHARACTER',
  701. 'CHECK',
  702. 'COLLATE',
  703. 'COLUMN',
  704. 'CONDITION',
  705. 'CONSTRAINT',
  706. 'CONTINUE',
  707. 'CONVERT',
  708. 'CREATE',
  709. 'CROSS',
  710. 'CURRENT_DATE',
  711. 'CURRENT_TIME',
  712. 'CURRENT_TIMESTAMP',
  713. 'CURRENT_USER',
  714. 'CURSOR',
  715. 'DATABASE',
  716. 'DATABASES',
  717. 'DAY_HOUR',
  718. 'DAY_MICROSECOND',
  719. 'DAY_MINUTE',
  720. 'DAY_SECOND',
  721. 'DEC',
  722. 'DECIMAL',
  723. 'DECLARE',
  724. 'DEFAULT',
  725. 'DELAYED',
  726. 'DELETE',
  727. 'DESC',
  728. 'DESCRIBE',
  729. 'DETERMINISTIC',
  730. 'DISTINCT',
  731. 'DISTINCTROW',
  732. 'DIV',
  733. 'DOUBLE',
  734. 'DROP',
  735. 'DUAL',
  736. 'EACH',
  737. 'ELSE',
  738. 'ELSEIF',
  739. 'ENCLOSED',
  740. 'ESCAPED',
  741. 'EXISTS',
  742. 'EXIT',
  743. 'EXPLAIN',
  744. 'FALSE',
  745. 'FETCH',
  746. 'FLOAT',
  747. 'FLOAT4',
  748. 'FLOAT8',
  749. 'FOR',
  750. 'FORCE',
  751. 'FOREIGN',
  752. 'FROM',
  753. 'FULLTEXT',
  754. 'GENERAL',
  755. 'GET',
  756. 'GRANT',
  757. 'GROUP',
  758. 'HAVING',
  759. 'HIGH_PRIORITY',
  760. 'HOUR_MICROSECOND',
  761. 'HOUR_MINUTE',
  762. 'HOUR_SECOND',
  763. 'IF',
  764. 'IGNORE',
  765. 'IGNORE_SERVER_IDS',
  766. 'IN',
  767. 'INDEX',
  768. 'INFILE',
  769. 'INNER',
  770. 'INOUT',
  771. 'INSENSITIVE',
  772. 'INSERT',
  773. 'INT',
  774. 'INT1',
  775. 'INT2',
  776. 'INT3',
  777. 'INT4',
  778. 'INT8',
  779. 'INTEGER',
  780. 'INTERVAL',
  781. 'INTO',
  782. 'IO_AFTER_GTIDS',
  783. 'IO_BEFORE_GTIDS',
  784. 'IS',
  785. 'ITERATE',
  786. 'JOIN',
  787. 'KEY',
  788. 'KEYS',
  789. 'KILL',
  790. 'LEADING',
  791. 'LEAVE',
  792. 'LEFT',
  793. 'LIKE',
  794. 'LIMIT',
  795. 'LINEAR',
  796. 'LINES',
  797. 'LOAD',
  798. 'LOCALTIME',
  799. 'LOCALTIMESTAMP',
  800. 'LOCK',
  801. 'LONG',
  802. 'LONGBLOB',
  803. 'LONGTEXT',
  804. 'LOOP',
  805. 'LOW_PRIORITY',
  806. 'MASTER_BIND',
  807. 'MASTER_HEARTBEAT_PERIOD',
  808. 'MASTER_SSL_VERIFY_SERVER_CERT',
  809. 'MATCH',
  810. 'MAXVALUE',
  811. 'MEDIUMBLOB',
  812. 'MEDIUMINT',
  813. 'MEDIUMTEXT',
  814. 'MIDDLEINT',
  815. 'MINUTE_MICROSECOND',
  816. 'MINUTE_SECOND',
  817. 'MOD',
  818. 'MODIFIES',
  819. 'NATURAL',
  820. 'NOT',
  821. 'NO_WRITE_TO_BINLOG',
  822. 'NULL',
  823. 'NUMERIC',
  824. 'ON',
  825. 'ONE_SHOT',
  826. 'OPTIMIZE',
  827. 'OPTION',
  828. 'OPTIONALLY',
  829. 'OR',
  830. 'ORDER',
  831. 'OUT',
  832. 'OUTER',
  833. 'OUTFILE',
  834. 'PARTITION',
  835. 'PRECISION',
  836. 'PRIMARY',
  837. 'PROCEDURE',
  838. 'PURGE',
  839. 'RANGE',
  840. 'READ',
  841. 'READS',
  842. 'READ_WRITE',
  843. 'REAL',
  844. 'REFERENCES',
  845. 'REGEXP',
  846. 'RELEASE',
  847. 'RENAME',
  848. 'REPEAT',
  849. 'REPLACE',
  850. 'REQUIRE',
  851. 'RESIGNAL',
  852. 'RESTRICT',
  853. 'RETURN',
  854. 'REVOKE',
  855. 'RIGHT',
  856. 'RLIKE',
  857. 'SCHEMA',
  858. 'SCHEMAS',
  859. 'SECOND_MICROSECOND',
  860. 'SELECT',
  861. 'SENSITIVE',
  862. 'SEPARATOR',
  863. 'SET',
  864. 'SHOW',
  865. 'SIGNAL',
  866. 'SLOW',
  867. 'SMALLINT',
  868. 'SPATIAL',
  869. 'SPECIFIC',
  870. 'SQL',
  871. 'SQLEXCEPTION',
  872. 'SQLSTATE',
  873. 'SQLWARNING',
  874. 'SQL_AFTER_GTIDS',
  875. 'SQL_BEFORE_GTIDS',
  876. 'SQL_BIG_RESULT',
  877. 'SQL_CALC_FOUND_ROWS',
  878. 'SQL_SMALL_RESULT',
  879. 'SSL',
  880. 'STARTING',
  881. 'STRAIGHT_JOIN',
  882. 'TABLE',
  883. 'TERMINATED',
  884. 'THEN',
  885. 'TINYBLOB',
  886. 'TINYINT',
  887. 'TINYTEXT',
  888. 'TO',
  889. 'TRAILING',
  890. 'TRIGGER',
  891. 'TRUE',
  892. 'UNDO',
  893. 'UNION',
  894. 'UNIQUE',
  895. 'UNLOCK',
  896. 'UNSIGNED',
  897. 'UPDATE',
  898. 'USAGE',
  899. 'USE',
  900. 'USING',
  901. 'UTC_DATE',
  902. 'UTC_TIME',
  903. 'UTC_TIMESTAMP',
  904. 'VALUES',
  905. 'VARBINARY',
  906. 'VARCHAR',
  907. 'VARCHARACTER',
  908. 'VARYING',
  909. 'WHEN',
  910. 'WHERE',
  911. 'WHILE',
  912. 'WITH',
  913. 'WRITE',
  914. 'XOR',
  915. 'YEAR_MONTH',
  916. 'ZEROFILL'
  917. );
  918. /**
  919. * the MySQL column/data types
  920. *
  921. * @see http://dev.mysql.com/doc/refman/5.1/en/data-types.html
  922. * @see http://dev.mysql.com/doc/refman/5.1/en/mysql-spatial-datatypes.html
  923. *
  924. * @global array MySQL column types
  925. */
  926. $PMA_SQPdata_column_type = array (
  927. 'BIGINT',
  928. 'BINARY',
  929. 'BIT',
  930. 'BLOB',
  931. 'BOOL',
  932. 'BOOLEAN', // numeric-type-overview.html
  933. 'CHAR',
  934. 'CHARACTER',
  935. 'DATE',
  936. 'DATETIME',
  937. 'DEC',
  938. 'DECIMAL',
  939. 'DOUBLE',
  940. 'ENUM',
  941. 'FLOAT',
  942. 'FLOAT4',
  943. 'FLOAT8',
  944. 'GEOMETRY', // spatial
  945. 'GEOMETRYCOLLECTION', // spatial
  946. 'INT',
  947. 'INT1',
  948. 'INT2',
  949. 'INT3',
  950. 'INT4',
  951. 'INT8',
  952. 'INTEGER',
  953. 'LINESTRING', // spatial
  954. 'LONG',
  955. 'LONGBLOB',
  956. 'LONGTEXT',
  957. 'MEDIUMBLOB',
  958. 'MEDIUMINT',
  959. 'MEDIUMTEXT',
  960. 'MIDDLEINT',
  961. 'MULTILINESTRING', // spatial
  962. 'MULTIPOINT', // spatial
  963. 'MULTIPOLYGON', // spatial
  964. 'NCHAR',
  965. 'NUMERIC',
  966. 'POINT', // spatial
  967. 'POLYGON', // spatial
  968. 'REAL',
  969. 'SERIAL', // alias
  970. 'SET',
  971. 'SMALLINT',
  972. 'TEXT',
  973. 'TIME',
  974. 'TIMESTAMP',
  975. 'TINYBLOB',
  976. 'TINYINT',
  977. 'TINYTEXT',
  978. 'VARBINARY',
  979. 'VARCHAR',
  980. 'YEAR'
  981. );
  982. /**
  983. * Documentation links for operators.
  984. */
  985. $PMA_SQPdata_operators_docs = array(
  986. '!=' => array(
  987. 'link' => 'comparison-operators',
  988. 'anchor' => 'operator_not-equal',
  989. ),
  990. '<>' => array(
  991. 'link' => 'comparison-operators',
  992. 'anchor' => 'operator_not-equal',
  993. ),
  994. '!' => array(
  995. 'link' => 'logical-operators',
  996. 'anchor' => 'operator_not',
  997. ),
  998. '||' => array(
  999. 'link' => 'logical-operators',
  1000. 'anchor' => 'operator_or',
  1001. ),
  1002. '+' => array(
  1003. 'link' => 'arithmetic-functions',
  1004. 'anchor' => 'operator_plus',
  1005. ),
  1006. '>>' => array(
  1007. 'link' => 'bit-functions',
  1008. 'anchor' => 'operator_right-shift',
  1009. ),
  1010. '-' => array(
  1011. 'link' => 'arithmetic-functions',
  1012. 'anchor' => 'operator_minus',
  1013. ),
  1014. '*' => array(
  1015. 'link' => 'arithmetic-functions',
  1016. 'anchor' => 'operator_times',
  1017. ),
  1018. '&&' => array(
  1019. 'link' => 'logical-operators',
  1020. 'anchor' => 'operator_and',
  1021. ),
  1022. '&' => array(
  1023. 'link' => 'bit-functions',
  1024. 'anchor' => 'operator_bitwise-and',
  1025. ),
  1026. '~' => array(
  1027. 'link' => 'bit-functions',
  1028. 'anchor' => 'operator_bitwise-invert',
  1029. ),
  1030. '|' => array(
  1031. 'link' => 'bit-functions',
  1032. 'anchor' => 'operator_bitwise-or',
  1033. ),
  1034. '^' => array(
  1035. 'link' => 'bit-functions',
  1036. 'anchor' => 'operator_bitwise-xor',
  1037. ),
  1038. //FIXME:duplicated key "="
  1039. '=' => array(
  1040. 'link' => 'assignment-operators',
  1041. 'anchor' => 'operator_assign-equal',
  1042. ),
  1043. ':=' => array(
  1044. 'link' => 'assignment-operators',
  1045. 'anchor' => 'operator_assign-value',
  1046. ),
  1047. '/' => array(
  1048. 'link' => 'arithmetic-functions',
  1049. 'anchor' => 'operator_divide',
  1050. ),
  1051. '<=>' => array(
  1052. 'link' => 'comparison-operators',
  1053. 'anchor' => 'operator_equal-to',
  1054. ),
  1055. //FIXME:duplicated key "="
  1056. '=' => array(
  1057. 'link' => 'comparison-operators',
  1058. 'anchor' => 'operator_equal',
  1059. ),
  1060. '>=' => array(
  1061. 'link' => 'comparison-operators',
  1062. 'anchor' => 'operator_greater-than-or-equal',
  1063. ),
  1064. '>' => array(
  1065. 'link' => 'comparison-operators',
  1066. 'anchor' => 'operator_greater-than',
  1067. ),
  1068. '<<' => array(
  1069. 'link' => 'bit-functions',
  1070. 'anchor' => 'operator_left-shift',
  1071. ),
  1072. '<=' => array(
  1073. 'link' => 'comparison-operators',
  1074. 'anchor' => 'operator_less-than-or-equal',
  1075. ),
  1076. '<' => array(
  1077. 'link' => 'comparison-operators',
  1078. 'anchor' => 'operator_less-than',
  1079. ),
  1080. '%' => array(
  1081. 'link' => 'arithmetic-functions',
  1082. 'anchor' => 'operator_mod',
  1083. )
  1084. );
  1085. /**
  1086. * Documentation links for functions.
  1087. */
  1088. $PMA_SQPdata_functions_docs = array(
  1089. 'ABS' => array(
  1090. 'link' => 'mathematical-functions',
  1091. 'anchor' => 'function_abs',
  1092. ),
  1093. 'ACOS' => array(
  1094. 'link' => 'mathematical-functions',
  1095. 'anchor' => 'function_acos',
  1096. ),
  1097. 'ADDDATE' => array(
  1098. 'link' => 'date-and-time-functions',
  1099. 'anchor' => 'function_adddate',
  1100. ),
  1101. 'ADDTIME' => array(
  1102. 'link' => 'date-and-time-functions',
  1103. 'anchor' => 'function_addtime',
  1104. ),
  1105. 'AES_DECRYPT' => array(
  1106. 'link' => 'encryption-functions',
  1107. 'anchor' => 'function_aes_decrypt',
  1108. ),
  1109. 'AES_ENCRYPT' => array(
  1110. 'link' => 'encryption-functions',
  1111. 'anchor' => 'function_aes_encrypt',
  1112. ),
  1113. 'AND' => array(
  1114. 'link' => 'logical-operators',
  1115. 'anchor' => 'operator_and',
  1116. ),
  1117. 'ASCII' => array(
  1118. 'link' => 'string-functions',
  1119. 'anchor' => 'function_ascii',
  1120. ),
  1121. 'ASIN' => array(
  1122. 'link' => 'mathematical-functions',
  1123. 'anchor' => 'function_asin',
  1124. ),
  1125. 'ATAN2' => array(
  1126. 'link' => 'mathematical-functions',
  1127. 'anchor' => 'function_atan2',
  1128. ),
  1129. 'ATAN' => array(
  1130. 'link' => 'mathematical-functions',
  1131. 'anchor' => 'function_atan',
  1132. ),
  1133. 'AVG' => array(
  1134. 'link' => 'group-by-functions',
  1135. 'anchor' => 'function_avg',
  1136. ),
  1137. 'BENCHMARK' => array(
  1138. 'link' => 'information-functions',
  1139. 'anchor' => 'function_benchmark',
  1140. ),
  1141. 'BIN' => array(
  1142. 'link' => 'string-functions',
  1143. 'anchor' => 'function_bin',
  1144. ),
  1145. 'BINARY' => array(
  1146. 'link' => 'cast-functions',
  1147. 'anchor' => 'operator_binary',
  1148. ),
  1149. 'BIT_AND' => array(
  1150. 'link' => 'group-by-functions',
  1151. 'anchor' => 'function_bit_and',
  1152. ),
  1153. 'BIT_COUNT' => array(
  1154. 'link' => 'bit-functions',
  1155. 'anchor' => 'function_bit_count',
  1156. ),
  1157. 'BIT_LENGTH' => array(
  1158. 'link' => 'string-functions',
  1159. 'anchor' => 'function_bit_length',
  1160. ),
  1161. 'BIT_OR' => array(
  1162. 'link' => 'group-by-functions',
  1163. 'anchor' => 'function_bit_or',
  1164. ),
  1165. 'BIT_XOR' => array(
  1166. 'link' => 'group-by-functions',
  1167. 'anchor' => 'function_bit_xor',
  1168. ),
  1169. 'CASE' => array(
  1170. 'link' => 'control-flow-functions',
  1171. 'anchor' => 'operator_case',
  1172. ),
  1173. 'CAST' => array(
  1174. 'link' => 'cast-functions',
  1175. 'anchor' => 'function_cast',
  1176. ),
  1177. 'CEIL' => array(
  1178. 'link' => 'mathematical-functions',
  1179. 'anchor' => 'function_ceil',
  1180. ),
  1181. 'CEILING' => array(
  1182. 'link' => 'mathematical-functions',
  1183. 'anchor' => 'function_ceiling',
  1184. ),
  1185. 'CHAR_LENGTH' => array(
  1186. 'link' => 'string-functions',
  1187. 'anchor' => 'function_char_length',
  1188. ),
  1189. 'CHAR' => array(
  1190. 'link' => 'string-functions',
  1191. 'anchor' => 'function_char',
  1192. ),
  1193. 'CHARACTER_LENGTH' => array(
  1194. 'link' => 'string-functions',
  1195. 'anchor' => 'function_character_length',
  1196. ),
  1197. 'CHARSET' => array(
  1198. 'link' => 'information-functions',
  1199. 'anchor' => 'function_charset',
  1200. ),
  1201. 'COALESCE' => array(
  1202. 'link' => 'comparison-operators',
  1203. 'anchor' => 'function_coalesce',
  1204. ),
  1205. 'COERCIBILITY' => array(
  1206. 'link' => 'information-functions',
  1207. 'anchor' => 'function_coercibility',
  1208. ),
  1209. 'COLLATION' => array(
  1210. 'link' => 'information-functions',
  1211. 'anchor' => 'function_collation',
  1212. ),
  1213. 'COMPRESS' => array(
  1214. 'link' => 'encryption-functions',
  1215. 'anchor' => 'function_compress',
  1216. ),
  1217. 'CONCAT_WS' => array(
  1218. 'link' => 'string-functions',
  1219. 'anchor' => 'function_concat_ws',
  1220. ),
  1221. 'CONCAT' => array(
  1222. 'link' => 'string-functions',
  1223. 'anchor' => 'function_concat',
  1224. ),
  1225. 'CONNECTION_ID' => array(
  1226. 'link' => 'information-functions',
  1227. 'anchor' => 'function_connection_id',
  1228. ),
  1229. 'CONV' => array(
  1230. 'link' => 'mathematical-functions',
  1231. 'anchor' => 'function_conv',
  1232. ),
  1233. 'CONVERT_TZ' => array(
  1234. 'link' => 'date-and-time-functions',
  1235. 'anchor' => 'function_convert_tz',
  1236. ),
  1237. 'Convert' => array(
  1238. 'link' => 'cast-functions',
  1239. 'anchor' => 'function_convert',
  1240. ),
  1241. 'COS' => array(
  1242. 'link' => 'mathematical-functions',
  1243. 'anchor' => 'function_cos',
  1244. ),
  1245. 'COT' => array(
  1246. 'link' => 'mathematical-functions',
  1247. 'anchor' => 'function_cot',
  1248. ),
  1249. 'COUNT' => array(
  1250. 'link' => 'group-by-functions',
  1251. 'anchor' => 'function_count',
  1252. ),
  1253. 'CRC32' => array(
  1254. 'link' => 'mathematical-functions',
  1255. 'anchor' => 'function_crc32',
  1256. ),
  1257. 'CURDATE' => array(
  1258. 'link' => 'date-and-time-functions',
  1259. 'anchor' => 'function_curdate',
  1260. ),
  1261. 'CURRENT_DATE' => array(
  1262. 'link' => 'date-and-time-functions',
  1263. 'anchor' => 'function_current_date',
  1264. ),
  1265. 'CURRENT_TIME' => array(
  1266. 'link' => 'date-and-time-functions',
  1267. 'anchor' => 'function_current_time',
  1268. ),
  1269. 'CURRENT_TIMESTAMP' => array(
  1270. 'link' => 'date-and-time-functions',
  1271. 'anchor' => 'function_current_timestamp',
  1272. ),
  1273. 'CURRENT_USER' => array(
  1274. 'link' => 'information-functions',
  1275. 'anchor' => 'function_current_user',
  1276. ),
  1277. 'CURTIME' => array(
  1278. 'link' => 'date-and-time-functions',
  1279. 'anchor' => 'function_curtime',
  1280. ),
  1281. 'DATABASE' => array(
  1282. 'link' => 'information-functions',
  1283. 'anchor' => 'function_database',
  1284. ),
  1285. 'DATE_ADD' => array(
  1286. 'link' => 'date-and-time-functions',
  1287. 'anchor' => 'function_date_add',
  1288. ),
  1289. 'DATE_FORMAT' => array(
  1290. 'link' => 'date-and-time-functions',
  1291. 'anchor' => 'function_date_format',
  1292. ),
  1293. 'DATE_SUB' => array(
  1294. 'link' => 'date-and-time-functions',
  1295. 'anchor' => 'function_date_sub',
  1296. ),
  1297. 'DATE' => array(
  1298. 'link' => 'date-and-time-functions',
  1299. 'anchor' => 'function_date',
  1300. ),
  1301. 'DATEDIFF' => array(
  1302. 'link' => 'date-and-time-functions',
  1303. 'anchor' => 'function_datediff',
  1304. ),
  1305. 'DAY' => array(
  1306. 'link' => 'date-and-time-functions',
  1307. 'anchor' => 'function_day',
  1308. ),
  1309. 'DAYNAME' => array(
  1310. 'link' => 'date-and-time-functions',
  1311. 'anchor' => 'function_dayname',
  1312. ),
  1313. 'DAYOFMONTH' => array(
  1314. 'link' => 'date-and-time-functions',
  1315. 'anchor' => 'function_dayofmonth',
  1316. ),
  1317. 'DAYOFWEEK' => array(
  1318. 'link' => 'date-and-time-functions',
  1319. 'anchor' => 'function_dayofweek',
  1320. ),
  1321. 'DAYOFYEAR' => array(
  1322. 'link' => 'date-and-time-functions',
  1323. 'anchor' => 'function_dayofyear',
  1324. ),
  1325. 'DECLARE' => array('link' => 'declare', 'anchor' => 'declare'),
  1326. 'DECODE' => array(
  1327. 'link' => 'encryption-functions',
  1328. 'anchor' => 'function_decode',
  1329. ),
  1330. 'DEFAULT' => array(
  1331. 'link' => 'miscellaneous-functions',
  1332. 'anchor' => 'function_default',
  1333. ),
  1334. 'DEGREES' => array(
  1335. 'link' => 'mathematical-functions',
  1336. 'anchor' => 'function_degrees',
  1337. ),
  1338. 'DES_DECRYPT' => array(
  1339. 'link' => 'encryption-functions',
  1340. 'anchor' => 'function_des_decrypt',
  1341. ),
  1342. 'DES_ENCRYPT' => array(
  1343. 'link' => 'encryption-functions',
  1344. 'anchor' => 'function_des_encrypt',
  1345. ),
  1346. 'DIV' => array(
  1347. 'link' => 'arithmetic-functions',
  1348. 'anchor' => 'operator_div',
  1349. ),
  1350. 'ELT' => array(
  1351. 'link' => 'string-functions',
  1352. 'anchor' => 'function_elt',
  1353. ),
  1354. 'ENCODE' => array(
  1355. 'link' => 'encryption-functions',
  1356. 'anchor' => 'function_encode',
  1357. ),
  1358. 'ENCRYPT' => array(
  1359. 'link' => 'encryption-functions',
  1360. 'anchor' => 'function_encrypt',
  1361. ),
  1362. 'EXP' => array(
  1363. 'link' => 'mathematical-functions',
  1364. 'anchor' => 'function_exp',
  1365. ),
  1366. 'EXPORT_SET' => array(
  1367. 'link' => 'string-functions',
  1368. 'anchor' => 'function_export_set',
  1369. ),
  1370. 'EXTRACT' => array(
  1371. 'link' => 'date-and-time-functions',
  1372. 'anchor' => 'function_extract',
  1373. ),
  1374. 'ExtractValue' => array(
  1375. 'link' => 'xml-functions',
  1376. 'anchor' => 'function_extractvalue',
  1377. ),
  1378. 'FIELD' => array(
  1379. 'link' => 'string-functions',
  1380. 'anchor' => 'function_field',
  1381. ),
  1382. 'FIND_IN_SET' => array(
  1383. 'link' => 'string-functions',
  1384. 'anchor' => 'function_find_in_set',
  1385. ),
  1386. 'FLOOR' => array(
  1387. 'link' => 'mathematical-functions',
  1388. 'anchor' => 'function_floor',
  1389. ),
  1390. 'FORMAT' => array(
  1391. 'link' => 'string-functions',
  1392. 'anchor' => 'function_format',
  1393. ),
  1394. 'FOUND_ROWS' => array(
  1395. 'link' => 'information-functions',
  1396. 'anchor' => 'function_found_rows',
  1397. ),
  1398. 'FROM_DAYS' => array(
  1399. 'link' => 'date-and-time-functions',
  1400. 'anchor' => 'function_from_days',
  1401. ),
  1402. 'FROM_UNIXTIME' => array(
  1403. 'link' => 'date-and-time-functions',
  1404. 'anchor' => 'function_from_unixtime',
  1405. ),
  1406. 'GET_FORMAT' => array(
  1407. 'link' => 'date-and-time-functions',
  1408. 'anchor' => 'function_get_format',
  1409. ),
  1410. 'GET_LOCK' => array(
  1411. 'link' => 'miscellaneous-functions',
  1412. 'anchor' => 'function_get_lock',
  1413. ),
  1414. 'GREATEST' => array(
  1415. 'link' => 'comparison-operators',
  1416. 'anchor' => 'function_greatest',
  1417. ),
  1418. 'GROUP_CONCAT' => array(
  1419. 'link' => 'group-by-functions',
  1420. 'anchor' => 'function_group_concat',
  1421. ),
  1422. 'HEX' => array(
  1423. 'link' => 'string-functions',
  1424. 'anchor' => 'function_hex',
  1425. ),
  1426. 'HOUR' => array(
  1427. 'link' => 'date-and-time-functions',
  1428. 'anchor' => 'function_hour',
  1429. ),
  1430. 'IF' => array(
  1431. 'link' => 'control-flow-functions',
  1432. 'anchor' => 'function_if',
  1433. ),
  1434. 'IFNULL' => array(
  1435. 'link' => 'control-flow-functions',
  1436. 'anchor' => 'function_ifnull',
  1437. ),
  1438. 'IN' => array(
  1439. 'link' => 'comparison-operators',
  1440. 'anchor' => 'function_in',
  1441. ),
  1442. 'INET_ATON' => array(
  1443. 'link' => 'miscellaneous-functions',
  1444. 'anchor' => 'function_inet_aton',
  1445. ),
  1446. 'INET_NTOA' => array(
  1447. 'link' => 'miscellaneous-functions',
  1448. 'anchor' => 'function_inet_ntoa',
  1449. ),
  1450. 'INSERT' => array(
  1451. 'link' => 'string-functions',
  1452. 'anchor' => 'function_insert',
  1453. ),
  1454. 'INSTR' => array(
  1455. 'link' => 'string-functions',
  1456. 'anchor' => 'function_instr',
  1457. ),
  1458. 'INTERVAL' => array(
  1459. 'link' => 'comparison-operators',
  1460. 'anchor' => 'function_interval',
  1461. ),
  1462. 'IS_FREE_LOCK' => array(
  1463. 'link' => 'miscellaneous-functions',
  1464. 'anchor' => 'function_is_free_lock',
  1465. ),
  1466. 'IS_USED_LOCK' => array(
  1467. 'link' => 'miscellaneous-functions',
  1468. 'anchor' => 'function_is_used_lock',
  1469. ),
  1470. 'IS' => array(
  1471. 'link' => 'comparison-operators',
  1472. 'anchor' => 'operator_is',
  1473. ),
  1474. 'ISNULL' => array(
  1475. 'link' => 'comparison-operators',
  1476. 'anchor' => 'function_isnull',
  1477. ),
  1478. 'LAST_DAY' => array(
  1479. 'link' => 'date-and-time-functions',
  1480. 'anchor' => 'function_last_day',
  1481. ),
  1482. 'LAST_INSERT_ID' => array(
  1483. 'link' => 'information-functions',
  1484. 'anchor' => 'function_last_insert_id',
  1485. ),
  1486. 'LCASE' => array(
  1487. 'link' => 'string-functions',
  1488. 'anchor' => 'function_lcase',
  1489. ),
  1490. 'LEAST' => array(
  1491. 'link' => 'comparison-operators',
  1492. 'anchor' => 'function_least',
  1493. ),
  1494. 'LEFT' => array(
  1495. 'link' => 'string-functions',
  1496. 'anchor' => 'function_left',
  1497. ),
  1498. 'LENGTH' => array(
  1499. 'link' => 'string-functions',
  1500. 'anchor' => 'function_length',
  1501. ),
  1502. 'LIKE' => array(
  1503. 'link' => 'string-comparison-functions',
  1504. 'anchor' => 'operator_like',
  1505. ),
  1506. 'LN' => array(
  1507. 'link' => 'mathematical-functions',
  1508. 'anchor' => 'function_ln',
  1509. ),
  1510. 'LOAD_FILE' => array(
  1511. 'link' => 'string-functions',
  1512. 'anchor' => 'function_load_file',
  1513. ),
  1514. 'LOCALTIME' => array(
  1515. 'link' => 'date-and-time-functions',
  1516. 'anchor' => 'function_localtime',
  1517. ),
  1518. 'LOCALTIMESTAMP' => array(
  1519. 'link' => 'date-and-time-functions',
  1520. 'anchor' => 'function_localtimestamp',
  1521. ),
  1522. 'LOCATE' => array(
  1523. 'link' => 'string-functions',
  1524. 'anchor' => 'function_locate',
  1525. ),
  1526. 'LOG10' => array(
  1527. 'link' => 'mathematical-functions',
  1528. 'anchor' => 'function_log10',
  1529. ),
  1530. 'LOG2' => array(
  1531. 'link' => 'mathematical-functions',
  1532. 'anchor' => 'function_log2',
  1533. ),
  1534. 'LOG' => array(
  1535. 'link' => 'mathematical-functions',
  1536. 'anchor' => 'function_log',
  1537. ),
  1538. 'LOWER' => array(
  1539. 'link' => 'string-functions',
  1540. 'anchor' => 'function_lower',
  1541. ),
  1542. 'LPAD' => array(
  1543. 'link' => 'string-functions',
  1544. 'anchor' => 'function_lpad',
  1545. ),
  1546. 'LTRIM' => array(
  1547. 'link' => 'string-functions',
  1548. 'anchor' => 'function_ltrim',
  1549. ),
  1550. 'MAKE_SET' => array(
  1551. 'link' => 'string-functions',
  1552. 'anchor' => 'function_make_set',
  1553. ),
  1554. 'MAKEDATE' => array(
  1555. 'link' => 'date-and-time-functions',
  1556. 'anchor' => 'function_makedate',
  1557. ),
  1558. 'MAKETIME' => array(
  1559. 'link' => 'date-and-time-functions',
  1560. 'anchor' => 'function_maketime',
  1561. ),
  1562. 'MASTER_POS_WAIT' => array(
  1563. 'link' => 'miscellaneous-functions',
  1564. 'anchor' => 'function_master_pos_wait',
  1565. ),
  1566. 'MATCH' => array(
  1567. 'link' => 'fulltext-search',
  1568. 'anchor' => 'function_match',
  1569. ),
  1570. 'MAX' => array(
  1571. 'link' => 'group-by-functions',
  1572. 'anchor' => 'function_max',
  1573. ),
  1574. 'MD5' => array(
  1575. 'link' => 'encryption-functions',
  1576. 'anchor' => 'function_md5',
  1577. ),
  1578. 'MICROSECOND' => array(
  1579. 'link' => 'date-and-time-functions',
  1580. 'anchor' => 'function_microsecond',
  1581. ),
  1582. 'MID' => array(
  1583. 'link' => 'string-functions',
  1584. 'anchor' => 'function_mid',
  1585. ),
  1586. 'MIN' => array(
  1587. 'link' => 'group-by-functions',
  1588. 'anchor' => 'function_min',
  1589. ),
  1590. 'MINUTE' => array(
  1591. 'link' => 'date-and-time-functions',
  1592. 'anchor' => 'function_minute',
  1593. ),
  1594. 'MOD' => array(
  1595. 'link' => 'mathematical-functions',
  1596. 'anchor' => 'function_mod',
  1597. ),
  1598. 'MONTH' => array(
  1599. 'link' => 'date-and-time-functions',
  1600. 'anchor' => 'function_month',
  1601. ),
  1602. 'MONTHNAME' => array(
  1603. 'link' => 'date-and-time-functions',
  1604. 'anchor' => 'function_monthname',
  1605. ),
  1606. 'NAME_CONST' => array(
  1607. 'link' => 'miscellaneous-functions',
  1608. 'anchor' => 'function_name_const',
  1609. ),
  1610. 'NOT' => array(
  1611. 'link' => 'logical-operators',
  1612. 'anchor' => 'operator_not',
  1613. ),
  1614. 'NOW' => array(
  1615. 'link' => 'date-and-time-functions',
  1616. 'anchor' => 'function_now',
  1617. ),
  1618. 'NULLIF' => array(
  1619. 'link' => 'control-flow-functions',
  1620. 'anchor' => 'function_nullif',
  1621. ),
  1622. 'OCT' => array(
  1623. 'link' => 'mathematical-functions',
  1624. 'anchor' => 'function_oct',
  1625. ),
  1626. 'OCTET_LENGTH' => array(
  1627. 'link' => 'string-functions',
  1628. 'anchor' => 'function_octet_length',
  1629. ),
  1630. 'OLD_PASSWORD' => array(
  1631. 'link' => 'encryption-functions',
  1632. 'anchor' => 'function_old_password',
  1633. ),
  1634. 'OR' => array(
  1635. 'link' => 'logical-operators',
  1636. 'anchor' => 'operator_or',
  1637. ),
  1638. 'ORD' => array(
  1639. 'link' => 'string-functions',
  1640. 'anchor' => 'function_ord',
  1641. ),
  1642. 'PASSWORD' => array(
  1643. 'link' => 'encryption-functions',
  1644. 'anchor' => 'function_password',
  1645. ),
  1646. 'PERIOD_ADD' => array(
  1647. 'link' => 'date-and-time-functions',
  1648. 'anchor' => 'function_period_add',
  1649. ),
  1650. 'PERIOD_DIFF' => array(
  1651. 'link' => 'date-and-time-functions',
  1652. 'anchor' => 'function_period_diff',
  1653. ),
  1654. 'PI' => array(
  1655. 'link' => 'mathematical-functions',
  1656. 'anchor' => 'function_pi',
  1657. ),
  1658. 'POSITION' => array(
  1659. 'link' => 'string-functions',
  1660. 'anchor' => 'function_position',
  1661. ),
  1662. 'POW' => array(
  1663. 'link' => 'mathematical-functions',
  1664. 'anchor' => 'function_pow',
  1665. ),
  1666. 'POWER' => array(
  1667. 'link' => 'mathematical-functions',
  1668. 'anchor' => 'function_power',
  1669. ),
  1670. 'QUARTER' => array(
  1671. 'link' => 'date-and-time-functions',
  1672. 'anchor' => 'function_quarter',
  1673. ),
  1674. 'QUOTE' => array(
  1675. 'link' => 'string-functions',
  1676. 'anchor' => 'function_quote',
  1677. ),
  1678. 'RADIANS' => array(
  1679. 'link' => 'mathematical-functions',
  1680. 'anchor' => 'function_radians',
  1681. ),
  1682. 'RAND' => array(
  1683. 'link' => 'mathematical-functions',
  1684. 'anchor' => 'function_rand',
  1685. ),
  1686. 'REGEXP' => array(
  1687. 'link' => 'regexp',
  1688. 'anchor' => 'operator_regexp',
  1689. ),
  1690. 'RELEASE_LOCK' => array(
  1691. 'link' => 'miscellaneous-functions',
  1692. 'anchor' => 'function_release_lock',
  1693. ),
  1694. 'REPEAT' => array(
  1695. 'link' => 'string-functions',
  1696. 'anchor' => 'function_repeat',
  1697. ),
  1698. 'REPLACE' => array(
  1699. 'link' => 'string-functions',
  1700. 'anchor' => 'function_replace',
  1701. ),
  1702. 'REVERSE' => array(
  1703. 'link' => 'string-functions',
  1704. 'anchor' => 'function_reverse',
  1705. ),
  1706. 'RIGHT' => array(
  1707. 'link' => 'string-functions',
  1708. 'anchor' => 'function_right',
  1709. ),
  1710. 'RLIKE' => array(
  1711. 'link' => 'regexp',
  1712. 'anchor' => 'operator_rlike',
  1713. ),
  1714. 'ROUND' => array(
  1715. 'link' => 'mathematical-functions',
  1716. 'anchor' => 'function_round',
  1717. ),
  1718. 'ROW_COUNT' => array(
  1719. 'link' => 'information-functions',
  1720. 'anchor' => 'function_row_count',
  1721. ),
  1722. 'RPAD' => array(
  1723. 'link' => 'string-functions',
  1724. 'anchor' => 'function_rpad',
  1725. ),
  1726. 'RTRIM' => array(
  1727. 'link' => 'string-functions',
  1728. 'anchor' => 'function_rtrim',
  1729. ),
  1730. 'SCHEMA' => array(
  1731. 'link' => 'information-functions',
  1732. 'anchor' => 'function_schema',
  1733. ),
  1734. 'SEC_TO_TIME' => array(
  1735. 'link' => 'date-and-time-functions',
  1736. 'anchor' => 'function_sec_to_time',
  1737. ),
  1738. 'SECOND' => array(
  1739. 'link' => 'date-and-time-functions',
  1740. 'anchor' => 'function_second',
  1741. ),
  1742. 'SESSION_USER' => array(
  1743. 'link' => 'information-functions',
  1744. 'anchor' => 'function_session_user',
  1745. ),
  1746. 'SHA' => array(
  1747. 'link' => 'encryption-functions',
  1748. 'anchor' => 'function_sha1',
  1749. ),
  1750. 'SHA1' => array(
  1751. 'link' => 'encryption-functions',
  1752. 'anchor' => 'function_sha1',
  1753. ),
  1754. 'SIGN' => array(
  1755. 'link' => 'mathematical-functions',
  1756. 'anchor' => 'function_sign',
  1757. ),
  1758. 'SIN' => array(
  1759. 'link' => 'mathematical-functions',
  1760. 'anchor' => 'function_sin',
  1761. ),
  1762. 'SLEEP' => array(
  1763. 'link' => 'miscellaneous-functions',
  1764. 'anchor' => 'function_sleep',
  1765. ),
  1766. 'SOUNDEX' => array(
  1767. 'link' => 'string-functions',
  1768. 'anchor' => 'function_soundex',
  1769. ),
  1770. 'SPACE' => array(
  1771. 'link' => 'string-functions',
  1772. 'anchor' => 'function_space',
  1773. ),
  1774. 'SQRT' => array(
  1775. 'link' => 'mathematical-functions',
  1776. 'anchor' => 'function_sqrt',
  1777. ),
  1778. 'STD' => array(
  1779. 'link' => 'group-by-functions',
  1780. 'anchor' => 'function_std',
  1781. ),
  1782. 'STDDEV_POP' => array(
  1783. 'link' => 'group-by-functions',
  1784. 'anchor' => 'function_stddev_pop',
  1785. ),
  1786. 'STDDEV_SAMP' => array(
  1787. 'link' => 'group-by-functions',
  1788. 'anchor' => 'function_stddev_samp',
  1789. ),
  1790. 'STDDEV' => array(
  1791. 'link' => 'group-by-functions',
  1792. 'anchor' => 'function_stddev',
  1793. ),
  1794. 'STR_TO_DATE' => array(
  1795. 'link' => 'date-and-time-functions',
  1796. 'anchor' => 'function_str_to_date',
  1797. ),
  1798. 'STRCMP' => array(
  1799. 'link' => 'string-comparison-functions',
  1800. 'anchor' => 'function_strcmp',
  1801. ),
  1802. 'SUBDATE' => array(
  1803. 'link' => 'date-and-time-functions',
  1804. 'anchor' => 'function_subdate',
  1805. ),
  1806. 'SUBSTR' => array(
  1807. 'link' => 'string-functions',
  1808. 'anchor' => 'function_substr',
  1809. ),
  1810. 'SUBSTRING_INDEX' => array(
  1811. 'link' => 'string-functions',
  1812. 'anchor' => 'function_substring_index',
  1813. ),
  1814. 'SUBSTRING' => array(
  1815. 'link' => 'string-functions',
  1816. 'anchor' => 'function_substring',
  1817. ),
  1818. 'SUBTIME' => array(
  1819. 'link' => 'date-and-time-functions',
  1820. 'anchor' => 'function_subtime',
  1821. ),
  1822. 'SUM' => array(
  1823. 'link' => 'group-by-functions',
  1824. 'anchor' => 'function_sum',
  1825. ),
  1826. 'SYSDATE' => array(
  1827. 'link' => 'date-and-time-functions',
  1828. 'anchor' => 'function_sysdate',
  1829. ),
  1830. 'SYSTEM_USER' => array(
  1831. 'link' => 'information-functions',
  1832. 'anchor' => 'function_system_user',
  1833. ),
  1834. 'TAN' => array(
  1835. 'link' => 'mathematical-functions',
  1836. 'anchor' => 'function_tan',
  1837. ),
  1838. 'TIME_FORMAT' => array(
  1839. 'link' => 'date-and-time-functions',
  1840. 'anchor' => 'function_time_format',
  1841. ),
  1842. 'TIME_TO_SEC' => array(
  1843. 'link' => 'date-and-time-functions',
  1844. 'anchor' => 'function_time_to_sec',
  1845. ),
  1846. 'TIME' => array(
  1847. 'link' => 'date-and-time-functions',
  1848. 'anchor' => 'function_time',
  1849. ),
  1850. 'TIMEDIFF' => array(
  1851. 'link' => 'date-and-time-functions',
  1852. 'anchor' => 'function_timediff',
  1853. ),
  1854. 'TIMESTAMP' => array(
  1855. 'link' => 'date-and-time-functions',
  1856. 'anchor' => 'function_timestamp',
  1857. ),
  1858. 'TIMESTAMPADD' => array(
  1859. 'link' => 'date-and-time-functions',
  1860. 'anchor' => 'function_timestampadd',
  1861. ),
  1862. 'TIMESTAMPDIFF' => array(
  1863. 'link' => 'date-and-time-functions',
  1864. 'anchor' => 'function_timestampdiff',
  1865. ),
  1866. 'TO_DAYS' => array(
  1867. 'link' => 'date-and-time-functions',
  1868. 'anchor' => 'function_to_days',
  1869. ),
  1870. 'TRIM' => array(
  1871. 'link' => 'string-functions',
  1872. 'anchor' => 'function_trim',
  1873. ),
  1874. 'TRUNCATE' => array(
  1875. 'link' => 'mathematical-functions',
  1876. 'anchor' => 'function_truncate',
  1877. ),
  1878. 'UCASE' => array(
  1879. 'link' => 'string-functions',
  1880. 'anchor' => 'function_ucase',
  1881. ),
  1882. 'UNCOMPRESS' => array(
  1883. 'link' => 'encryption-functions',
  1884. 'anchor' => 'function_uncompress',
  1885. ),
  1886. 'UNCOMPRESSED_LENGTH' => array(
  1887. 'link' => 'encryption-functions',
  1888. 'anchor' => 'function_uncompressed_length',
  1889. ),
  1890. 'UNHEX' => array(
  1891. 'link' => 'string-functions',
  1892. 'anchor' => 'function_unhex',
  1893. ),
  1894. 'UNIX_TIMESTAMP' => array(
  1895. 'link' => 'date-and-time-functions',
  1896. 'anchor' => 'function_unix_timestamp',
  1897. ),
  1898. 'UpdateXML' => array(
  1899. 'link' => 'xml-functions',
  1900. 'anchor' => 'function_updatexml',
  1901. ),
  1902. 'UPPER' => array(
  1903. 'link' => 'string-functions',
  1904. 'anchor' => 'function_upper',
  1905. ),
  1906. 'USER' => array(
  1907. 'link' => 'information-functions',
  1908. 'anchor' => 'function_user',
  1909. ),
  1910. 'UTC_DATE' => array(
  1911. 'link' => 'date-and-time-functions',
  1912. 'anchor' => 'function_utc_date',
  1913. ),
  1914. 'UTC_TIME' => array(
  1915. 'link' => 'date-and-time-functions',
  1916. 'anchor' => 'function_utc_time',
  1917. ),
  1918. 'UTC_TIMESTAMP' => array(
  1919. 'link' => 'date-and-time-functions',
  1920. 'anchor' => 'function_utc_timestamp',
  1921. ),
  1922. 'UUID_SHORT' => array(
  1923. 'link' => 'miscellaneous-functions',
  1924. 'anchor' => 'function_uuid_short',
  1925. ),
  1926. 'UUID' => array(
  1927. 'link' => 'miscellaneous-functions',
  1928. 'anchor' => 'function_uuid',
  1929. ),
  1930. 'VALUES' => array(
  1931. 'link' => 'miscellaneous-functions',
  1932. 'anchor' => 'function_values',
  1933. ),
  1934. 'VAR_POP' => array(
  1935. 'link' => 'group-by-functions',
  1936. 'anchor' => 'function_var_pop',
  1937. ),
  1938. 'VAR_SAMP' => array(
  1939. 'link' => 'group-by-functions',
  1940. 'anchor' => 'function_var_samp',
  1941. ),
  1942. 'VARIANCE' => array(
  1943. 'link' => 'group-by-functions',
  1944. 'anchor' => 'function_variance',
  1945. ),
  1946. 'VERSION' => array(
  1947. 'link' => 'information-functions',
  1948. 'anchor' => 'function_version',
  1949. ),
  1950. 'WEEK' => array(
  1951. 'link' => 'date-and-time-functions',
  1952. 'anchor' => 'function_week',
  1953. ),
  1954. 'WEEKDAY' => array(
  1955. 'link' => 'date-and-time-functions',
  1956. 'anchor' => 'function_weekday',
  1957. ),
  1958. 'WEEKOFYEAR' => array(
  1959. 'link' => 'date-and-time-functions',
  1960. 'anchor' => 'function_weekofyear',
  1961. ),
  1962. 'XOR' => array(
  1963. 'link' => 'logical-operators',
  1964. 'anchor' => 'operator_xor',
  1965. ),
  1966. 'YEAR' => array(
  1967. 'link' => 'date-and-time-functions',
  1968. 'anchor' => 'function_year',
  1969. ),
  1970. 'YEARWEEK' => array(
  1971. 'link' => 'date-and-time-functions',
  1972. 'anchor' => 'function_yearweek',
  1973. ),
  1974. 'SOUNDS_LIKE' => array(
  1975. 'link' => 'string-functions',
  1976. 'anchor' => 'operator_sounds-like',
  1977. ),
  1978. 'IS_NOT_NULL' => array(
  1979. 'link' => 'comparison-operators',
  1980. 'anchor' => 'operator_is-not-null',
  1981. ),
  1982. 'IS_NOT' => array(
  1983. 'link' => 'comparison-operators',
  1984. 'anchor' => 'operator_is-not',
  1985. ),
  1986. 'IS_NULL' => array(
  1987. 'link' => 'comparison-operators',
  1988. 'anchor' => 'operator_is-null',
  1989. ),
  1990. 'NOT_LIKE' => array(
  1991. 'link' => 'string-comparison-functions',
  1992. 'anchor' => 'operator_not-like',
  1993. ),
  1994. 'NOT_REGEXP' => array(
  1995. 'link' => 'regexp',
  1996. 'anchor' => 'operator_not-regexp',
  1997. ),
  1998. 'COUNT_DISTINCT' => array(
  1999. 'link' => 'group-by-functions',
  2000. 'anchor' => 'function_count-distinct',
  2001. ),
  2002. 'NOT_IN' => array(
  2003. 'link' => 'comparison-operators',
  2004. 'anchor' => 'function_not-in',
  2005. )
  2006. );
  2007. ?>