1 #ifndef LEX_INCLUDED 2 #define LEX_INCLUDED 3 4 /* Copyright (c) 2000, 2010, Oracle and/or its affiliates. 5 Copyright (c) 2009, 2015, MariaDB 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; version 2 of the License. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of fmt(&self, f: &mut fmt::Formatter) -> fmt::Result13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ 19 20 21 /* This file includes all reserved words and functions */ 22 23 #include "lex_symbol.h" 24 25 SYM_GROUP sym_group_common= {"", ""}; 26 SYM_GROUP sym_group_geom= {"Spatial extensions", "HAVE_SPATIAL"}; 27 SYM_GROUP sym_group_rtree= {"RTree keys", "HAVE_RTREE_KEYS"}; fmt(&self, f: &mut fmt::Formatter) -> fmt::Result28 29 /* We don't want to include sql_yacc.h into gen_lex_hash */ 30 #ifdef NO_YACC_SYMBOLS 31 #define SYM_OR_NULL(A) 0 32 #else 33 #define SYM_OR_NULL(A) A 34 #endif 35 36 #define SYM(A) SYM_OR_NULL(A),0,&sym_group_common 37 38 /* 39 Symbols are broken into separated arrays to allow field names with 40 same name as functions. 41 These are kept sorted for human lookup (the symbols are hashed). 42 43 NOTE! The symbol tables should be the same regardless of what features 44 are compiled into the server. Don't add ifdef'ed symbols to the 45 lists 46 */ 47 48 SYMBOL symbols[] = { 49 { "&&", SYM(AND_AND_SYM)}, 50 { "<=", SYM(LE)}, 51 { "<>", SYM(NE)}, 52 { "!=", SYM(NE)}, 53 { ">=", SYM(GE)}, 54 { "<<", SYM(SHIFT_LEFT)}, 55 { ">>", SYM(SHIFT_RIGHT)}, 56 { "<=>", SYM(EQUAL_SYM)}, 57 { "ACCESSIBLE", SYM(ACCESSIBLE_SYM)}, 58 { "ACTION", SYM(ACTION)}, 59 { "ADD", SYM(ADD)}, 60 { "ADMIN", SYM(ADMIN_SYM)}, 61 { "AFTER", SYM(AFTER_SYM)}, 62 { "AGAINST", SYM(AGAINST)}, 63 { "AGGREGATE", SYM(AGGREGATE_SYM)}, 64 { "ALL", SYM(ALL)}, 65 { "ALGORITHM", SYM(ALGORITHM_SYM)}, 66 { "ALTER", SYM(ALTER)}, 67 { "ALWAYS", SYM(ALWAYS_SYM)}, 68 { "ANALYZE", SYM(ANALYZE_SYM)}, 69 { "AND", SYM(AND_SYM)}, 70 { "ANY", SYM(ANY_SYM)}, 71 { "AS", SYM(AS)}, 72 { "ASC", SYM(ASC)}, 73 { "ASCII", SYM(ASCII_SYM)}, 74 { "ASENSITIVE", SYM(ASENSITIVE_SYM)}, 75 { "AT", SYM(AT_SYM)}, 76 { "ATOMIC", SYM(ATOMIC_SYM)}, 77 { "AUTHORS", SYM(AUTHORS_SYM)}, 78 { "AUTO_INCREMENT", SYM(AUTO_INC)}, 79 { "AUTOEXTEND_SIZE", SYM(AUTOEXTEND_SIZE_SYM)}, 80 { "AUTO", SYM(AUTO_SYM)}, 81 { "AVG", SYM(AVG_SYM)}, 82 { "AVG_ROW_LENGTH", SYM(AVG_ROW_LENGTH)}, 83 { "BACKUP", SYM(BACKUP_SYM)}, 84 { "BEFORE", SYM(BEFORE_SYM)}, 85 { "BEGIN", SYM(BEGIN_MARIADB_SYM)}, 86 { "BETWEEN", SYM(BETWEEN_SYM)}, 87 { "BIGINT", SYM(BIGINT)}, 88 { "BINARY", SYM(BINARY)}, 89 { "BINLOG", SYM(BINLOG_SYM)}, 90 { "BIT", SYM(BIT_SYM)}, 91 { "BLOB", SYM(BLOB_MARIADB_SYM)}, 92 { "BLOCK", SYM(BLOCK_SYM)}, 93 { "BODY", SYM(BODY_MARIADB_SYM)}, 94 { "BOOL", SYM(BOOL_SYM)}, 95 { "BOOLEAN", SYM(BOOLEAN_SYM)}, 96 { "BOTH", SYM(BOTH)}, 97 { "BTREE", SYM(BTREE_SYM)}, 98 { "BY", SYM(BY)}, 99 { "BYTE", SYM(BYTE_SYM)}, 100 { "CACHE", SYM(CACHE_SYM)}, 101 { "CALL", SYM(CALL_SYM)}, 102 { "CASCADE", SYM(CASCADE)}, 103 { "CASCADED", SYM(CASCADED)}, 104 { "CASE", SYM(CASE_SYM)}, 105 { "CATALOG_NAME", SYM(CATALOG_NAME_SYM)}, 106 { "CHAIN", SYM(CHAIN_SYM)}, 107 { "CHANGE", SYM(CHANGE)}, 108 { "CHANGED", SYM(CHANGED)}, 109 { "CHAR", SYM(CHAR_SYM)}, 110 { "CHARACTER", SYM(CHAR_SYM)}, 111 { "CHARSET", SYM(CHARSET)}, 112 { "CHECK", SYM(CHECK_SYM)}, 113 { "CHECKPOINT", SYM(CHECKPOINT_SYM)}, 114 { "CHECKSUM", SYM(CHECKSUM_SYM)}, 115 { "CIPHER", SYM(CIPHER_SYM)}, 116 { "CLASS_ORIGIN", SYM(CLASS_ORIGIN_SYM)}, 117 { "CLIENT", SYM(CLIENT_SYM)}, 118 { "CLOB", SYM(CLOB_MARIADB_SYM)}, 119 { "CLOSE", SYM(CLOSE_SYM)}, 120 { "COALESCE", SYM(COALESCE)}, 121 { "CODE", SYM(CODE_SYM)}, 122 { "COLLATE", SYM(COLLATE_SYM)}, 123 { "COLLATION", SYM(COLLATION_SYM)}, 124 { "COLUMN", SYM(COLUMN_SYM)}, 125 { "COLUMN_NAME", SYM(COLUMN_NAME_SYM)}, 126 { "COLUMNS", SYM(COLUMNS)}, 127 { "COLUMN_ADD", SYM(COLUMN_ADD_SYM)}, 128 { "COLUMN_CHECK", SYM(COLUMN_CHECK_SYM)}, 129 { "COLUMN_CREATE", SYM(COLUMN_CREATE_SYM)}, 130 { "COLUMN_DELETE", SYM(COLUMN_DELETE_SYM)}, 131 { "COLUMN_GET", SYM(COLUMN_GET_SYM)}, 132 { "COMMENT", SYM(COMMENT_SYM)}, 133 { "COMMIT", SYM(COMMIT_SYM)}, 134 { "COMMITTED", SYM(COMMITTED_SYM)}, 135 { "COMPACT", SYM(COMPACT_SYM)}, 136 { "COMPLETION", SYM(COMPLETION_SYM)}, 137 { "COMPRESSED", SYM(COMPRESSED_SYM)}, 138 { "CONCURRENT", SYM(CONCURRENT)}, 139 { "CONDITION", SYM(CONDITION_SYM)}, 140 { "CONNECTION", SYM(CONNECTION_SYM)}, 141 { "CONSISTENT", SYM(CONSISTENT_SYM)}, 142 { "CONSTRAINT", SYM(CONSTRAINT)}, 143 { "CONSTRAINT_CATALOG", SYM(CONSTRAINT_CATALOG_SYM)}, 144 { "CONSTRAINT_NAME", SYM(CONSTRAINT_NAME_SYM)}, 145 { "CONSTRAINT_SCHEMA", SYM(CONSTRAINT_SCHEMA_SYM)}, 146 { "CONTAINS", SYM(CONTAINS_SYM)}, 147 { "CONTEXT", SYM(CONTEXT_SYM)}, 148 { "CONTINUE", SYM(CONTINUE_MARIADB_SYM)}, 149 { "CONTRIBUTORS", SYM(CONTRIBUTORS_SYM)}, 150 { "CONVERT", SYM(CONVERT_SYM)}, 151 { "CPU", SYM(CPU_SYM)}, 152 { "CREATE", SYM(CREATE)}, 153 { "CROSS", SYM(CROSS)}, 154 { "CUBE", SYM(CUBE_SYM)}, 155 { "CURRENT", SYM(CURRENT_SYM)}, 156 { "CURRENT_DATE", SYM(CURDATE)}, 157 { "CURRENT_POS", SYM(CURRENT_POS_SYM)}, 158 { "CURRENT_ROLE", SYM(CURRENT_ROLE)}, 159 { "CURRENT_TIME", SYM(CURTIME)}, 160 { "CURRENT_TIMESTAMP", SYM(NOW_SYM)}, 161 { "CURRENT_USER", SYM(CURRENT_USER)}, 162 { "CURSOR", SYM(CURSOR_SYM)}, 163 { "CURSOR_NAME", SYM(CURSOR_NAME_SYM)}, 164 { "CYCLE", SYM(CYCLE_SYM)}, 165 { "DATA", SYM(DATA_SYM)}, 166 { "DATABASE", SYM(DATABASE)}, 167 { "DATABASES", SYM(DATABASES)}, 168 { "DATAFILE", SYM(DATAFILE_SYM)}, 169 { "DATE", SYM(DATE_SYM)}, 170 { "DATETIME", SYM(DATETIME)}, 171 { "DAY", SYM(DAY_SYM)}, 172 { "DAY_HOUR", SYM(DAY_HOUR_SYM)}, 173 { "DAY_MICROSECOND", SYM(DAY_MICROSECOND_SYM)}, 174 { "DAY_MINUTE", SYM(DAY_MINUTE_SYM)}, 175 { "DAY_SECOND", SYM(DAY_SECOND_SYM)}, 176 { "DEALLOCATE", SYM(DEALLOCATE_SYM)}, 177 { "DEC", SYM(DECIMAL_SYM)}, 178 { "DECIMAL", SYM(DECIMAL_SYM)}, 179 { "DECLARE", SYM(DECLARE_MARIADB_SYM)}, 180 { "DEFAULT", SYM(DEFAULT)}, 181 { "DEFINER", SYM(DEFINER_SYM)}, 182 { "DELAYED", SYM(DELAYED_SYM)}, 183 { "DELAY_KEY_WRITE", SYM(DELAY_KEY_WRITE_SYM)}, 184 { "DELETE", SYM(DELETE_SYM)}, 185 { "DELETE_DOMAIN_ID", SYM(DELETE_DOMAIN_ID_SYM)}, 186 { "DESC", SYM(DESC)}, 187 { "DESCRIBE", SYM(DESCRIBE)}, 188 { "DES_KEY_FILE", SYM(DES_KEY_FILE)}, 189 { "DETERMINISTIC", SYM(DETERMINISTIC_SYM)}, 190 { "DIAGNOSTICS", SYM(DIAGNOSTICS_SYM)}, 191 { "DIRECTORY", SYM(DIRECTORY_SYM)}, 192 { "DISABLE", SYM(DISABLE_SYM)}, 193 { "DISCARD", SYM(DISCARD)}, 194 { "DISK", SYM(DISK_SYM)}, 195 { "DISTINCT", SYM(DISTINCT)}, 196 { "DISTINCTROW", SYM(DISTINCT)}, /* Access likes this */ 197 { "DIV", SYM(DIV_SYM)}, 198 { "DO", SYM(DO_SYM)}, 199 { "DOUBLE", SYM(DOUBLE_SYM)}, 200 { "DO_DOMAIN_IDS", SYM(DO_DOMAIN_IDS_SYM)}, 201 { "DROP", SYM(DROP)}, 202 { "DUAL", SYM(DUAL_SYM)}, 203 { "DUMPFILE", SYM(DUMPFILE)}, 204 { "DUPLICATE", SYM(DUPLICATE_SYM)}, 205 { "DYNAMIC", SYM(DYNAMIC_SYM)}, 206 { "EACH", SYM(EACH_SYM)}, 207 { "ELSE", SYM(ELSE)}, 208 { "ELSEIF", SYM(ELSEIF_MARIADB_SYM)}, 209 { "ELSIF", SYM(ELSIF_MARIADB_SYM)}, 210 { "ENABLE", SYM(ENABLE_SYM)}, 211 { "ENCLOSED", SYM(ENCLOSED)}, 212 { "END", SYM(END)}, 213 { "ENDS", SYM(ENDS_SYM)}, 214 { "ENGINE", SYM(ENGINE_SYM)}, 215 { "ENGINES", SYM(ENGINES_SYM)}, 216 { "ENUM", SYM(ENUM)}, 217 { "ERROR", SYM(ERROR_SYM)}, 218 { "ERRORS", SYM(ERRORS)}, 219 { "ESCAPE", SYM(ESCAPE_SYM)}, 220 { "ESCAPED", SYM(ESCAPED)}, 221 { "EVENT", SYM(EVENT_SYM)}, 222 { "EVENTS", SYM(EVENTS_SYM)}, 223 { "EVERY", SYM(EVERY_SYM)}, 224 { "EXAMINED", SYM(EXAMINED_SYM)}, 225 { "EXCEPT", SYM(EXCEPT_SYM)}, 226 { "EXCHANGE", SYM(EXCHANGE_SYM)}, 227 { "EXCLUDE", SYM(EXCLUDE_SYM)}, 228 { "EXECUTE", SYM(EXECUTE_SYM)}, 229 { "EXCEPTION", SYM(EXCEPTION_MARIADB_SYM)}, 230 { "EXISTS", SYM(EXISTS)}, 231 { "EXIT", SYM(EXIT_MARIADB_SYM)}, 232 { "EXPANSION", SYM(EXPANSION_SYM)}, 233 { "EXPORT", SYM(EXPORT_SYM)}, 234 { "EXPLAIN", SYM(DESCRIBE)}, 235 { "EXTENDED", SYM(EXTENDED_SYM)}, 236 { "EXTENT_SIZE", SYM(EXTENT_SIZE_SYM)}, 237 { "FALSE", SYM(FALSE_SYM)}, 238 { "FAST", SYM(FAST_SYM)}, 239 { "FAULTS", SYM(FAULTS_SYM)}, 240 { "FETCH", SYM(FETCH_SYM)}, 241 { "FIELDS", SYM(COLUMNS)}, 242 { "FILE", SYM(FILE_SYM)}, 243 { "FIRST", SYM(FIRST_SYM)}, 244 { "FIXED", SYM(FIXED_SYM)}, 245 { "FLOAT", SYM(FLOAT_SYM)}, 246 { "FLOAT4", SYM(FLOAT_SYM)}, 247 { "FLOAT8", SYM(DOUBLE_SYM)}, 248 { "FLUSH", SYM(FLUSH_SYM)}, 249 { "FOLLOWING", SYM(FOLLOWING_SYM)}, 250 { "FOLLOWS", SYM(FOLLOWS_SYM)}, 251 { "FOR", SYM(FOR_SYM)}, 252 { "FORCE", SYM(FORCE_SYM)}, 253 { "FOREIGN", SYM(FOREIGN)}, 254 { "FORMAT", SYM(FORMAT_SYM)}, 255 { "FOUND", SYM(FOUND_SYM)}, 256 { "FROM", SYM(FROM)}, 257 { "FULL", SYM(FULL)}, 258 { "FULLTEXT", SYM(FULLTEXT_SYM)}, 259 { "FUNCTION", SYM(FUNCTION_SYM)}, 260 { "GENERAL", SYM(GENERAL)}, 261 { "GENERATED", SYM(GENERATED_SYM)}, 262 { "GEOMETRY", SYM(GEOMETRY_SYM)}, 263 { "GEOMETRYCOLLECTION",SYM(GEOMETRYCOLLECTION)}, 264 { "GET_FORMAT", SYM(GET_FORMAT)}, 265 { "GET", SYM(GET_SYM)}, 266 { "GLOBAL", SYM(GLOBAL_SYM)}, 267 { "GOTO", SYM(GOTO_MARIADB_SYM)}, 268 { "GRANT", SYM(GRANT)}, 269 { "GRANTS", SYM(GRANTS)}, 270 { "GROUP", SYM(GROUP_SYM)}, 271 { "HANDLER", SYM(HANDLER_SYM)}, 272 { "HARD", SYM(HARD_SYM)}, 273 { "HASH", SYM(HASH_SYM)}, 274 { "HAVING", SYM(HAVING)}, 275 { "HELP", SYM(HELP_SYM)}, 276 { "HIGH_PRIORITY", SYM(HIGH_PRIORITY)}, 277 { "HISTORY", SYM(HISTORY_SYM)}, 278 { "HOST", SYM(HOST_SYM)}, 279 { "HOSTS", SYM(HOSTS_SYM)}, 280 { "HOUR", SYM(HOUR_SYM)}, 281 { "HOUR_MICROSECOND", SYM(HOUR_MICROSECOND_SYM)}, 282 { "HOUR_MINUTE", SYM(HOUR_MINUTE_SYM)}, 283 { "HOUR_SECOND", SYM(HOUR_SECOND_SYM)}, 284 { "ID", SYM(ID_SYM)}, 285 { "IDENTIFIED", SYM(IDENTIFIED_SYM)}, 286 { "IF", SYM(IF_SYM)}, 287 { "IGNORE", SYM(IGNORE_SYM)}, 288 { "IGNORE_DOMAIN_IDS", SYM(IGNORE_DOMAIN_IDS_SYM)}, 289 { "IGNORE_SERVER_IDS", SYM(IGNORE_SERVER_IDS_SYM)}, 290 { "IMMEDIATE", SYM(IMMEDIATE_SYM)}, 291 { "IMPORT", SYM(IMPORT)}, 292 { "INTERSECT", SYM(INTERSECT_SYM)}, 293 { "IN", SYM(IN_SYM)}, 294 { "INCREMENT", SYM(INCREMENT_SYM)}, 295 { "INDEX", SYM(INDEX_SYM)}, 296 { "INDEXES", SYM(INDEXES)}, 297 { "INFILE", SYM(INFILE)}, 298 { "INITIAL_SIZE", SYM(INITIAL_SIZE_SYM)}, 299 { "INNER", SYM(INNER_SYM)}, 300 { "INOUT", SYM(INOUT_SYM)}, 301 { "INSENSITIVE", SYM(INSENSITIVE_SYM)}, 302 { "INSERT", SYM(INSERT)}, 303 { "INSERT_METHOD", SYM(INSERT_METHOD)}, 304 { "INSTALL", SYM(INSTALL_SYM)}, 305 { "INT", SYM(INT_SYM)}, 306 { "INT1", SYM(TINYINT)}, 307 { "INT2", SYM(SMALLINT)}, 308 { "INT3", SYM(MEDIUMINT)}, 309 { "INT4", SYM(INT_SYM)}, 310 { "INT8", SYM(BIGINT)}, 311 { "INTEGER", SYM(INT_SYM)}, 312 { "INTERVAL", SYM(INTERVAL_SYM)}, 313 { "INVISIBLE", SYM(INVISIBLE_SYM)}, 314 { "INTO", SYM(INTO)}, 315 { "IO", SYM(IO_SYM)}, 316 { "IO_THREAD", SYM(RELAY_THREAD)}, 317 { "IPC", SYM(IPC_SYM)}, 318 { "IS", SYM(IS)}, 319 { "ISOLATION", SYM(ISOLATION)}, 320 { "ISOPEN", SYM(ISOPEN_SYM)}, 321 { "ISSUER", SYM(ISSUER_SYM)}, 322 { "ITERATE", SYM(ITERATE_SYM)}, 323 { "INVOKER", SYM(INVOKER_SYM)}, 324 { "JOIN", SYM(JOIN_SYM)}, 325 { "JSON", SYM(JSON_SYM)}, 326 { "KEY", SYM(KEY_SYM)}, 327 { "KEYS", SYM(KEYS)}, 328 { "KEY_BLOCK_SIZE", SYM(KEY_BLOCK_SIZE)}, 329 { "KILL", SYM(KILL_SYM)}, 330 { "LANGUAGE", SYM(LANGUAGE_SYM)}, 331 { "LAST", SYM(LAST_SYM)}, 332 { "LAST_VALUE", SYM(LAST_VALUE)}, 333 { "LASTVAL", SYM(LASTVAL_SYM)}, 334 { "LEADING", SYM(LEADING)}, 335 { "LEAVE", SYM(LEAVE_SYM)}, 336 { "LEAVES", SYM(LEAVES)}, 337 { "LEFT", SYM(LEFT)}, 338 { "LESS", SYM(LESS_SYM)}, 339 { "LEVEL", SYM(LEVEL_SYM)}, 340 { "LIKE", SYM(LIKE)}, 341 { "LIMIT", SYM(LIMIT)}, 342 { "LINEAR", SYM(LINEAR_SYM)}, 343 { "LINES", SYM(LINES)}, 344 { "LINESTRING", SYM(LINESTRING)}, 345 { "LIST", SYM(LIST_SYM)}, 346 { "LOAD", SYM(LOAD)}, 347 { "LOCAL", SYM(LOCAL_SYM)}, 348 { "LOCALTIME", SYM(NOW_SYM)}, 349 { "LOCALTIMESTAMP", SYM(NOW_SYM)}, 350 { "LOCK", SYM(LOCK_SYM)}, 351 { "LOCKS", SYM(LOCKS_SYM)}, 352 { "LOGFILE", SYM(LOGFILE_SYM)}, 353 { "LOGS", SYM(LOGS_SYM)}, 354 { "LONG", SYM(LONG_SYM)}, 355 { "LONGBLOB", SYM(LONGBLOB)}, 356 { "LONGTEXT", SYM(LONGTEXT)}, 357 { "LOOP", SYM(LOOP_SYM)}, 358 { "LOW_PRIORITY", SYM(LOW_PRIORITY)}, 359 { "MASTER", SYM(MASTER_SYM)}, 360 { "MASTER_CONNECT_RETRY", SYM(MASTER_CONNECT_RETRY_SYM)}, 361 { "MASTER_DELAY", SYM(MASTER_DELAY_SYM)}, 362 { "MASTER_GTID_POS", SYM(MASTER_GTID_POS_SYM)}, 363 { "MASTER_HOST", SYM(MASTER_HOST_SYM)}, 364 { "MASTER_LOG_FILE", SYM(MASTER_LOG_FILE_SYM)}, 365 { "MASTER_LOG_POS", SYM(MASTER_LOG_POS_SYM)}, 366 { "MASTER_PASSWORD", SYM(MASTER_PASSWORD_SYM)}, 367 { "MASTER_PORT", SYM(MASTER_PORT_SYM)}, 368 { "MASTER_SERVER_ID", SYM(MASTER_SERVER_ID_SYM)}, 369 { "MASTER_SSL", SYM(MASTER_SSL_SYM)}, 370 { "MASTER_SSL_CA", SYM(MASTER_SSL_CA_SYM)}, 371 { "MASTER_SSL_CAPATH",SYM(MASTER_SSL_CAPATH_SYM)}, 372 { "MASTER_SSL_CERT", SYM(MASTER_SSL_CERT_SYM)}, 373 { "MASTER_SSL_CIPHER",SYM(MASTER_SSL_CIPHER_SYM)}, 374 { "MASTER_SSL_CRL", SYM(MASTER_SSL_CRL_SYM)}, 375 { "MASTER_SSL_CRLPATH",SYM(MASTER_SSL_CRLPATH_SYM)}, 376 { "MASTER_SSL_KEY", SYM(MASTER_SSL_KEY_SYM)}, 377 { "MASTER_SSL_VERIFY_SERVER_CERT", SYM(MASTER_SSL_VERIFY_SERVER_CERT_SYM)}, 378 { "MASTER_USER", SYM(MASTER_USER_SYM)}, 379 { "MASTER_USE_GTID", SYM(MASTER_USE_GTID_SYM)}, 380 { "MASTER_HEARTBEAT_PERIOD", SYM(MASTER_HEARTBEAT_PERIOD_SYM)}, 381 { "MATCH", SYM(MATCH)}, 382 { "MAX_CONNECTIONS_PER_HOUR", SYM(MAX_CONNECTIONS_PER_HOUR)}, 383 { "MAX_QUERIES_PER_HOUR", SYM(MAX_QUERIES_PER_HOUR)}, 384 { "MAX_ROWS", SYM(MAX_ROWS)}, 385 { "MAX_SIZE", SYM(MAX_SIZE_SYM)}, 386 { "MAX_STATEMENT_TIME", SYM(MAX_STATEMENT_TIME_SYM)}, 387 { "MAX_UPDATES_PER_HOUR", SYM(MAX_UPDATES_PER_HOUR)}, 388 { "MAX_USER_CONNECTIONS", SYM(MAX_USER_CONNECTIONS_SYM)}, 389 { "MAXVALUE", SYM(MAXVALUE_SYM)}, 390 { "MEDIUM", SYM(MEDIUM_SYM)}, 391 { "MEDIUMBLOB", SYM(MEDIUMBLOB)}, 392 { "MEDIUMINT", SYM(MEDIUMINT)}, 393 { "MEDIUMTEXT", SYM(MEDIUMTEXT)}, 394 { "MEMORY", SYM(MEMORY_SYM)}, 395 { "MERGE", SYM(MERGE_SYM)}, 396 { "MESSAGE_TEXT", SYM(MESSAGE_TEXT_SYM)}, 397 { "MICROSECOND", SYM(MICROSECOND_SYM)}, 398 { "MIDDLEINT", SYM(MEDIUMINT)}, /* For powerbuilder */ 399 { "MIGRATE", SYM(MIGRATE_SYM)}, 400 { "MINUTE", SYM(MINUTE_SYM)}, 401 { "MINUTE_MICROSECOND", SYM(MINUTE_MICROSECOND_SYM)}, 402 { "MINUTE_SECOND", SYM(MINUTE_SECOND_SYM)}, 403 { "MINVALUE", SYM(MINVALUE_SYM)}, 404 { "MIN_ROWS", SYM(MIN_ROWS)}, 405 { "MOD", SYM(MOD_SYM)}, 406 { "MODE", SYM(MODE_SYM)}, 407 { "MODIFIES", SYM(MODIFIES_SYM)}, 408 { "MODIFY", SYM(MODIFY_SYM)}, 409 { "MONTH", SYM(MONTH_SYM)}, 410 { "MULTILINESTRING", SYM(MULTILINESTRING)}, 411 { "MULTIPOINT", SYM(MULTIPOINT)}, 412 { "MULTIPOLYGON", SYM(MULTIPOLYGON)}, 413 { "MUTEX", SYM(MUTEX_SYM)}, 414 { "MYSQL", SYM(MYSQL_SYM)}, 415 { "MYSQL_ERRNO", SYM(MYSQL_ERRNO_SYM)}, 416 { "NAME", SYM(NAME_SYM)}, 417 { "NAMES", SYM(NAMES_SYM)}, 418 { "NATIONAL", SYM(NATIONAL_SYM)}, 419 { "NATURAL", SYM(NATURAL)}, 420 { "NCHAR", SYM(NCHAR_SYM)}, 421 { "NEW", SYM(NEW_SYM)}, 422 { "NEXT", SYM(NEXT_SYM)}, 423 { "NEXTVAL", SYM(NEXTVAL_SYM)}, 424 { "NO", SYM(NO_SYM)}, 425 { "NOMAXVALUE", SYM(NOMAXVALUE_SYM)}, 426 { "NOMINVALUE", SYM(NOMINVALUE_SYM)}, 427 { "NOCACHE", SYM(NOCACHE_SYM)}, 428 { "NOCYCLE", SYM(NOCYCLE_SYM)}, 429 { "NO_WAIT", SYM(NO_WAIT_SYM)}, 430 { "NOWAIT", SYM(NOWAIT_SYM)}, 431 { "NODEGROUP", SYM(NODEGROUP_SYM)}, 432 { "NONE", SYM(NONE_SYM)}, 433 { "NOT", SYM(NOT_SYM)}, 434 { "NOTFOUND", SYM(NOTFOUND_SYM)}, 435 { "NO_WRITE_TO_BINLOG", SYM(NO_WRITE_TO_BINLOG)}, 436 { "NULL", SYM(NULL_SYM)}, 437 { "NUMBER", SYM(NUMBER_MARIADB_SYM)}, 438 { "NUMERIC", SYM(NUMERIC_SYM)}, 439 { "NVARCHAR", SYM(NVARCHAR_SYM)}, 440 { "OF", SYM(OF_SYM)}, 441 { "OFFSET", SYM(OFFSET_SYM)}, 442 { "OLD_PASSWORD", SYM(OLD_PASSWORD_SYM)}, 443 { "ON", SYM(ON)}, 444 { "ONE", SYM(ONE_SYM)}, 445 { "ONLINE", SYM(ONLINE_SYM)}, 446 { "ONLY", SYM(ONLY_SYM)}, 447 { "OPEN", SYM(OPEN_SYM)}, 448 { "OPTIMIZE", SYM(OPTIMIZE)}, 449 { "OPTIONS", SYM(OPTIONS_SYM)}, 450 { "OPTION", SYM(OPTION)}, 451 { "OPTIONALLY", SYM(OPTIONALLY)}, 452 { "OR", SYM(OR_SYM)}, 453 { "ORDER", SYM(ORDER_SYM)}, 454 { "OTHERS", SYM(OTHERS_MARIADB_SYM)}, 455 { "OUT", SYM(OUT_SYM)}, 456 { "OUTER", SYM(OUTER)}, 457 { "OUTFILE", SYM(OUTFILE)}, 458 { "OVER", SYM(OVER_SYM)}, 459 { "OWNER", SYM(OWNER_SYM)}, 460 { "PACKAGE", SYM(PACKAGE_MARIADB_SYM)}, 461 { "PACK_KEYS", SYM(PACK_KEYS_SYM)}, 462 { "PAGE", SYM(PAGE_SYM)}, 463 { "PAGE_CHECKSUM", SYM(PAGE_CHECKSUM_SYM)}, 464 { "PARSER", SYM(PARSER_SYM)}, 465 { "PARSE_VCOL_EXPR", SYM(PARSE_VCOL_EXPR_SYM)}, 466 { "PERIOD", SYM(PERIOD_SYM)}, 467 { "PARTIAL", SYM(PARTIAL)}, 468 { "PARTITION", SYM(PARTITION_SYM)}, 469 { "PARTITIONING", SYM(PARTITIONING_SYM)}, 470 { "PARTITIONS", SYM(PARTITIONS_SYM)}, 471 { "PASSWORD", SYM(PASSWORD_SYM)}, 472 { "PERSISTENT", SYM(PERSISTENT_SYM)}, 473 { "PHASE", SYM(PHASE_SYM)}, 474 { "PLUGIN", SYM(PLUGIN_SYM)}, 475 { "PLUGINS", SYM(PLUGINS_SYM)}, 476 { "POINT", SYM(POINT_SYM)}, 477 { "POLYGON", SYM(POLYGON)}, 478 { "PORT", SYM(PORT_SYM)}, 479 { "PRECEDES", SYM(PRECEDES_SYM)}, 480 { "PRECEDING", SYM(PRECEDING_SYM)}, 481 { "PRECISION", SYM(PRECISION)}, 482 { "PREPARE", SYM(PREPARE_SYM)}, 483 { "PRESERVE", SYM(PRESERVE_SYM)}, 484 { "PREV", SYM(PREV_SYM)}, 485 { "PREVIOUS", SYM(PREVIOUS_SYM)}, 486 { "PRIMARY", SYM(PRIMARY_SYM)}, 487 { "PRIVILEGES", SYM(PRIVILEGES)}, 488 { "PROCEDURE", SYM(PROCEDURE_SYM)}, 489 { "PROCESS" , SYM(PROCESS)}, 490 { "PROCESSLIST", SYM(PROCESSLIST_SYM)}, 491 { "PROFILE", SYM(PROFILE_SYM)}, 492 { "PROFILES", SYM(PROFILES_SYM)}, 493 { "PROXY", SYM(PROXY_SYM)}, 494 { "PURGE", SYM(PURGE)}, 495 { "QUARTER", SYM(QUARTER_SYM)}, 496 { "QUERY", SYM(QUERY_SYM)}, 497 { "QUICK", SYM(QUICK)}, 498 { "RAISE", SYM(RAISE_MARIADB_SYM)}, 499 { "RANGE", SYM(RANGE_SYM)}, 500 { "RAW", SYM(RAW_MARIADB_SYM)}, 501 { "READ", SYM(READ_SYM)}, 502 { "READ_ONLY", SYM(READ_ONLY_SYM)}, 503 { "READ_WRITE", SYM(READ_WRITE_SYM)}, 504 { "READS", SYM(READS_SYM)}, 505 { "REAL", SYM(REAL)}, 506 { "REBUILD", SYM(REBUILD_SYM)}, 507 { "RECOVER", SYM(RECOVER_SYM)}, 508 { "RECURSIVE", SYM(RECURSIVE_SYM)}, 509 { "REDO_BUFFER_SIZE", SYM(REDO_BUFFER_SIZE_SYM)}, 510 { "REDOFILE", SYM(REDOFILE_SYM)}, 511 { "REDUNDANT", SYM(REDUNDANT_SYM)}, 512 { "REFERENCES", SYM(REFERENCES)}, 513 { "REGEXP", SYM(REGEXP)}, 514 { "RELAY", SYM(RELAY)}, 515 { "RELAYLOG", SYM(RELAYLOG_SYM)}, 516 { "RELAY_LOG_FILE", SYM(RELAY_LOG_FILE_SYM)}, 517 { "RELAY_LOG_POS", SYM(RELAY_LOG_POS_SYM)}, 518 { "RELAY_THREAD", SYM(RELAY_THREAD)}, 519 { "RELEASE", SYM(RELEASE_SYM)}, 520 { "RELOAD", SYM(RELOAD)}, 521 { "REMOVE", SYM(REMOVE_SYM)}, 522 { "RENAME", SYM(RENAME)}, 523 { "REORGANIZE", SYM(REORGANIZE_SYM)}, 524 { "REPAIR", SYM(REPAIR)}, 525 { "REPEATABLE", SYM(REPEATABLE_SYM)}, 526 { "REPLACE", SYM(REPLACE)}, 527 { "REPLICATION", SYM(REPLICATION)}, 528 { "REPEAT", SYM(REPEAT_SYM)}, 529 { "REQUIRE", SYM(REQUIRE_SYM)}, 530 { "RESET", SYM(RESET_SYM)}, 531 { "RESIGNAL", SYM(RESIGNAL_SYM)}, 532 { "RESTART", SYM(RESTART_SYM)}, 533 { "RESTORE", SYM(RESTORE_SYM)}, 534 { "RESTRICT", SYM(RESTRICT)}, 535 { "RESUME", SYM(RESUME_SYM)}, 536 { "RETURNED_SQLSTATE",SYM(RETURNED_SQLSTATE_SYM)}, 537 { "RETURN", SYM(RETURN_MARIADB_SYM)}, 538 { "RETURNING", SYM(RETURNING_SYM)}, 539 { "RETURNS", SYM(RETURNS_SYM)}, 540 { "REUSE", SYM(REUSE_SYM)}, 541 { "REVERSE", SYM(REVERSE_SYM)}, 542 { "REVOKE", SYM(REVOKE)}, 543 { "RIGHT", SYM(RIGHT)}, 544 { "RLIKE", SYM(REGEXP)}, /* Like in mSQL2 */ 545 { "ROLE", SYM(ROLE_SYM)}, 546 { "ROLLBACK", SYM(ROLLBACK_SYM)}, 547 { "ROLLUP", SYM(ROLLUP_SYM)}, 548 { "ROUTINE", SYM(ROUTINE_SYM)}, 549 { "ROW", SYM(ROW_SYM)}, 550 { "ROWCOUNT", SYM(ROWCOUNT_SYM)}, /* Oracle-N */ 551 { "ROWS", SYM(ROWS_SYM)}, 552 { "ROWTYPE", SYM(ROWTYPE_MARIADB_SYM)}, 553 { "ROW_COUNT", SYM(ROW_COUNT_SYM)}, 554 { "ROW_FORMAT", SYM(ROW_FORMAT_SYM)}, 555 { "RTREE", SYM(RTREE_SYM)}, 556 { "SAVEPOINT", SYM(SAVEPOINT_SYM)}, 557 { "SCHEDULE", SYM(SCHEDULE_SYM)}, 558 { "SCHEMA", SYM(DATABASE)}, 559 { "SCHEMA_NAME", SYM(SCHEMA_NAME_SYM)}, 560 { "SCHEMAS", SYM(DATABASES)}, 561 { "SECOND", SYM(SECOND_SYM)}, 562 { "SECOND_MICROSECOND", SYM(SECOND_MICROSECOND_SYM)}, 563 { "SECURITY", SYM(SECURITY_SYM)}, 564 { "SELECT", SYM(SELECT_SYM)}, 565 { "SENSITIVE", SYM(SENSITIVE_SYM)}, 566 { "SEPARATOR", SYM(SEPARATOR_SYM)}, 567 { "SEQUENCE", SYM(SEQUENCE_SYM)}, 568 { "SERIAL", SYM(SERIAL_SYM)}, 569 { "SERIALIZABLE", SYM(SERIALIZABLE_SYM)}, 570 { "SESSION", SYM(SESSION_SYM)}, 571 { "SERVER", SYM(SERVER_SYM)}, 572 { "SET", SYM(SET)}, 573 { "SETVAL", SYM(SETVAL_SYM)}, 574 { "SHARE", SYM(SHARE_SYM)}, 575 { "SHOW", SYM(SHOW)}, 576 { "SHUTDOWN", SYM(SHUTDOWN)}, 577 { "SIGNAL", SYM(SIGNAL_SYM)}, 578 { "SIGNED", SYM(SIGNED_SYM)}, 579 { "SIMPLE", SYM(SIMPLE_SYM)}, 580 { "SLAVE", SYM(SLAVE)}, 581 { "SLAVES", SYM(SLAVES)}, 582 { "SLAVE_POS", SYM(SLAVE_POS_SYM)}, 583 { "SLOW", SYM(SLOW)}, 584 { "SNAPSHOT", SYM(SNAPSHOT_SYM)}, 585 { "SMALLINT", SYM(SMALLINT)}, 586 { "SOCKET", SYM(SOCKET_SYM)}, 587 { "SOFT", SYM(SOFT_SYM)}, 588 { "SOME", SYM(ANY_SYM)}, 589 { "SONAME", SYM(SONAME_SYM)}, 590 { "SOUNDS", SYM(SOUNDS_SYM)}, 591 { "SOURCE", SYM(SOURCE_SYM)}, 592 { "STORED", SYM(STORED_SYM)}, 593 { "SPATIAL", SYM(SPATIAL_SYM)}, 594 { "SPECIFIC", SYM(SPECIFIC_SYM)}, 595 { "REF_SYSTEM_ID", SYM(REF_SYSTEM_ID_SYM)}, 596 { "SQL", SYM(SQL_SYM)}, 597 { "SQLEXCEPTION", SYM(SQLEXCEPTION_SYM)}, 598 { "SQLSTATE", SYM(SQLSTATE_SYM)}, 599 { "SQLWARNING", SYM(SQLWARNING_SYM)}, 600 { "SQL_BIG_RESULT", SYM(SQL_BIG_RESULT)}, 601 { "SQL_BUFFER_RESULT", SYM(SQL_BUFFER_RESULT)}, 602 { "SQL_CACHE", SYM(SQL_CACHE_SYM)}, 603 { "SQL_CALC_FOUND_ROWS", SYM(SQL_CALC_FOUND_ROWS)}, 604 { "SQL_NO_CACHE", SYM(SQL_NO_CACHE_SYM)}, 605 { "SQL_SMALL_RESULT", SYM(SQL_SMALL_RESULT)}, 606 { "SQL_THREAD", SYM(SQL_THREAD)}, 607 { "SQL_TSI_SECOND", SYM(SECOND_SYM)}, 608 { "SQL_TSI_MINUTE", SYM(MINUTE_SYM)}, 609 { "SQL_TSI_HOUR", SYM(HOUR_SYM)}, 610 { "SQL_TSI_DAY", SYM(DAY_SYM)}, 611 { "SQL_TSI_WEEK", SYM(WEEK_SYM)}, 612 { "SQL_TSI_MONTH", SYM(MONTH_SYM)}, 613 { "SQL_TSI_QUARTER", SYM(QUARTER_SYM)}, 614 { "SQL_TSI_YEAR", SYM(YEAR_SYM)}, 615 { "SSL", SYM(SSL_SYM)}, 616 { "START", SYM(START_SYM)}, 617 { "STARTING", SYM(STARTING)}, 618 { "STARTS", SYM(STARTS_SYM)}, 619 { "STATEMENT", SYM(STATEMENT_SYM)}, 620 { "STATS_AUTO_RECALC",SYM(STATS_AUTO_RECALC_SYM)}, 621 { "STATS_PERSISTENT", SYM(STATS_PERSISTENT_SYM)}, 622 { "STATS_SAMPLE_PAGES",SYM(STATS_SAMPLE_PAGES_SYM)}, 623 { "STATUS", SYM(STATUS_SYM)}, 624 { "STOP", SYM(STOP_SYM)}, 625 { "STORAGE", SYM(STORAGE_SYM)}, 626 { "STRAIGHT_JOIN", SYM(STRAIGHT_JOIN)}, 627 { "STRING", SYM(STRING_SYM)}, 628 { "SUBCLASS_ORIGIN", SYM(SUBCLASS_ORIGIN_SYM)}, 629 { "SUBJECT", SYM(SUBJECT_SYM)}, 630 { "SUBPARTITION", SYM(SUBPARTITION_SYM)}, 631 { "SUBPARTITIONS", SYM(SUBPARTITIONS_SYM)}, 632 { "SUPER", SYM(SUPER_SYM)}, 633 { "SUSPEND", SYM(SUSPEND_SYM)}, 634 { "SWAPS", SYM(SWAPS_SYM)}, 635 { "SWITCHES", SYM(SWITCHES_SYM)}, 636 { "SYSTEM", SYM(SYSTEM)}, 637 { "SYSTEM_TIME", SYM(SYSTEM_TIME_SYM)}, 638 { "TABLE", SYM(TABLE_SYM)}, 639 { "TABLE_NAME", SYM(TABLE_NAME_SYM)}, 640 { "TABLES", SYM(TABLES)}, 641 { "TABLESPACE", SYM(TABLESPACE)}, 642 { "TABLE_CHECKSUM", SYM(TABLE_CHECKSUM_SYM)}, 643 { "TEMPORARY", SYM(TEMPORARY)}, 644 { "TEMPTABLE", SYM(TEMPTABLE_SYM)}, 645 { "TERMINATED", SYM(TERMINATED)}, 646 { "TEXT", SYM(TEXT_SYM)}, 647 { "THAN", SYM(THAN_SYM)}, 648 { "THEN", SYM(THEN_SYM)}, 649 { "TIES", SYM(TIES_SYM)}, 650 { "TIME", SYM(TIME_SYM)}, 651 { "TIMESTAMP", SYM(TIMESTAMP)}, 652 { "TIMESTAMPADD", SYM(TIMESTAMP_ADD)}, 653 { "TIMESTAMPDIFF", SYM(TIMESTAMP_DIFF)}, 654 { "TINYBLOB", SYM(TINYBLOB)}, 655 { "TINYINT", SYM(TINYINT)}, 656 { "TINYTEXT", SYM(TINYTEXT)}, 657 { "TO", SYM(TO_SYM)}, 658 { "TRAILING", SYM(TRAILING)}, 659 { "TRANSACTION", SYM(TRANSACTION_SYM)}, 660 { "TRANSACTIONAL", SYM(TRANSACTIONAL_SYM)}, 661 { "TRIGGER", SYM(TRIGGER_SYM)}, 662 { "TRIGGERS", SYM(TRIGGERS_SYM)}, 663 { "TRUE", SYM(TRUE_SYM)}, 664 { "TRUNCATE", SYM(TRUNCATE_SYM)}, 665 { "TYPE", SYM(TYPE_SYM)}, 666 { "TYPES", SYM(TYPES_SYM)}, 667 { "UNBOUNDED", SYM(UNBOUNDED_SYM)}, 668 { "UNCOMMITTED", SYM(UNCOMMITTED_SYM)}, 669 { "UNDEFINED", SYM(UNDEFINED_SYM)}, 670 { "UNDO_BUFFER_SIZE", SYM(UNDO_BUFFER_SIZE_SYM)}, 671 { "UNDOFILE", SYM(UNDOFILE_SYM)}, 672 { "UNDO", SYM(UNDO_SYM)}, 673 { "UNICODE", SYM(UNICODE_SYM)}, 674 { "UNION", SYM(UNION_SYM)}, 675 { "UNIQUE", SYM(UNIQUE_SYM)}, 676 { "UNKNOWN", SYM(UNKNOWN_SYM)}, 677 { "UNLOCK", SYM(UNLOCK_SYM)}, 678 { "UNINSTALL", SYM(UNINSTALL_SYM)}, 679 { "UNSIGNED", SYM(UNSIGNED)}, 680 { "UNTIL", SYM(UNTIL_SYM)}, 681 { "UPDATE", SYM(UPDATE_SYM)}, 682 { "UPGRADE", SYM(UPGRADE_SYM)}, 683 { "USAGE", SYM(USAGE)}, 684 { "USE", SYM(USE_SYM)}, 685 { "USER", SYM(USER_SYM)}, 686 { "USER_RESOURCES", SYM(RESOURCES)}, 687 { "USE_FRM", SYM(USE_FRM)}, 688 { "USING", SYM(USING)}, 689 { "UTC_DATE", SYM(UTC_DATE_SYM)}, 690 { "UTC_TIME", SYM(UTC_TIME_SYM)}, 691 { "UTC_TIMESTAMP", SYM(UTC_TIMESTAMP_SYM)}, 692 { "VALUE", SYM(VALUE_SYM)}, 693 { "VALUES", SYM(VALUES)}, 694 { "VARBINARY", SYM(VARBINARY)}, 695 { "VARCHAR", SYM(VARCHAR)}, 696 { "VARCHARACTER", SYM(VARCHAR)}, 697 { "VARCHAR2", SYM(VARCHAR2_MARIADB_SYM)}, 698 { "VARIABLES", SYM(VARIABLES)}, 699 { "VARYING", SYM(VARYING)}, 700 { "VIA", SYM(VIA_SYM)}, 701 { "VIEW", SYM(VIEW_SYM)}, 702 { "VIRTUAL", SYM(VIRTUAL_SYM)}, 703 { "VERSIONING", SYM(VERSIONING_SYM)}, 704 { "WAIT", SYM(WAIT_SYM)}, 705 { "WARNINGS", SYM(WARNINGS)}, 706 { "WEEK", SYM(WEEK_SYM)}, 707 { "WEIGHT_STRING", SYM(WEIGHT_STRING_SYM)}, 708 { "WHEN", SYM(WHEN_SYM)}, 709 { "WHERE", SYM(WHERE)}, 710 { "WHILE", SYM(WHILE_SYM)}, 711 { "WINDOW", SYM(WINDOW_SYM)}, 712 { "WITH", SYM(WITH)}, 713 { "WITHIN", SYM(WITHIN)}, 714 { "WITHOUT", SYM(WITHOUT)}, 715 { "WORK", SYM(WORK_SYM)}, 716 { "WRAPPER", SYM(WRAPPER_SYM)}, 717 { "WRITE", SYM(WRITE_SYM)}, 718 { "X509", SYM(X509_SYM)}, 719 { "XOR", SYM(XOR)}, 720 { "XA", SYM(XA_SYM)}, 721 { "XML", SYM(XML_SYM)}, /* LOAD XML Arnold/Erik */ 722 { "YEAR", SYM(YEAR_SYM)}, 723 { "YEAR_MONTH", SYM(YEAR_MONTH_SYM)}, 724 { "ZEROFILL", SYM(ZEROFILL)}, 725 { "||", SYM(OR2_SYM)} 726 }; 727 728 729 SYMBOL sql_functions[] = { 730 { "ADDDATE", SYM(ADDDATE_SYM)}, 731 { "BIT_AND", SYM(BIT_AND)}, 732 { "BIT_OR", SYM(BIT_OR)}, 733 { "BIT_XOR", SYM(BIT_XOR)}, 734 { "CAST", SYM(CAST_SYM)}, 735 { "COUNT", SYM(COUNT_SYM)}, 736 { "CUME_DIST", SYM(CUME_DIST_SYM)}, 737 { "CURDATE", SYM(CURDATE)}, 738 { "CURTIME", SYM(CURTIME)}, 739 { "DATE_ADD", SYM(DATE_ADD_INTERVAL)}, 740 { "DATE_SUB", SYM(DATE_SUB_INTERVAL)}, 741 { "DATE_FORMAT", SYM(DATE_FORMAT_SYM)}, 742 { "DECODE", SYM(DECODE_MARIADB_SYM)}, 743 { "DENSE_RANK", SYM(DENSE_RANK_SYM)}, 744 { "EXTRACT", SYM(EXTRACT_SYM)}, 745 { "FIRST_VALUE", SYM(FIRST_VALUE_SYM)}, 746 { "GROUP_CONCAT", SYM(GROUP_CONCAT_SYM)}, 747 { "LAG", SYM(LAG_SYM)}, 748 { "LEAD", SYM(LEAD_SYM)}, 749 { "MAX", SYM(MAX_SYM)}, 750 { "MEDIAN", SYM(MEDIAN_SYM)}, 751 { "MID", SYM(SUBSTRING)}, /* unireg function */ 752 { "MIN", SYM(MIN_SYM)}, 753 { "NOW", SYM(NOW_SYM)}, 754 { "NTH_VALUE", SYM(NTH_VALUE_SYM)}, 755 { "NTILE", SYM(NTILE_SYM)}, 756 { "POSITION", SYM(POSITION_SYM)}, 757 { "PERCENT_RANK", SYM(PERCENT_RANK_SYM)}, 758 { "PERCENTILE_CONT", SYM(PERCENTILE_CONT_SYM)}, 759 { "PERCENTILE_DISC", SYM(PERCENTILE_DISC_SYM)}, 760 { "RANK", SYM(RANK_SYM)}, 761 { "ROW_NUMBER", SYM(ROW_NUMBER_SYM)}, 762 { "SESSION_USER", SYM(USER_SYM)}, 763 { "STD", SYM(STD_SYM)}, 764 { "STDDEV", SYM(STD_SYM)}, 765 { "STDDEV_POP", SYM(STD_SYM)}, 766 { "STDDEV_SAMP", SYM(STDDEV_SAMP_SYM)}, 767 { "SUBDATE", SYM(SUBDATE_SYM)}, 768 { "SUBSTR", SYM(SUBSTRING)}, 769 { "SUBSTRING", SYM(SUBSTRING)}, 770 { "SUM", SYM(SUM_SYM)}, 771 { "SYSDATE", SYM(SYSDATE)}, 772 { "SYSTEM_USER", SYM(USER_SYM)}, 773 { "TRIM", SYM(TRIM)}, 774 { "TRIM_ORACLE", SYM(TRIM_ORACLE)}, 775 { "VARIANCE", SYM(VARIANCE_SYM)}, 776 { "VAR_POP", SYM(VARIANCE_SYM)}, 777 { "VAR_SAMP", SYM(VAR_SAMP_SYM)}, 778 }; 779 780 size_t symbols_length= sizeof(symbols) / sizeof(SYMBOL); 781 size_t sql_functions_length= sizeof(sql_functions) / sizeof(SYMBOL); 782 783 #endif /* LEX_INCLUDED */ 784