diff --git a/CHANGELOG.md b/CHANGELOG.md index 82266304..79d6558c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## [5.10.1] - 2024-11-10 + +### Fixed + +- Fix parsing of ALTER TABLE … RENAME KEY (#580) +- Fix parsing table names that start with "e1" (#578) +- Improve handling of negative and overflowed offsets on TokensList (#582) +- Fix parsing of queries with 'AND' (#590) +- Fix C style comments with two asterisks (#597) +- Fix parsing of SRID in column definition (#595) + ## [5.10.0] - 2024-08-29 - Fix parsing of UPDATE ... SET (#577) @@ -579,6 +590,7 @@ __Breaking changes:__ * First release of this library. +[5.10.1]: https://github.com/phpmyadmin/sql-parser/compare/5.10.0...5.10.1 [5.10.0]: https://github.com/phpmyadmin/sql-parser/compare/5.9.1...5.10.0 [5.9.1]: https://github.com/phpmyadmin/sql-parser/compare/5.9.0...5.9.1 [5.9.0]: https://github.com/phpmyadmin/sql-parser/compare/5.8.2...5.9.0 diff --git a/src/Components/CreateDefinition.php b/src/Components/CreateDefinition.php index 02fc5e78..436987ee 100644 --- a/src/Components/CreateDefinition.php +++ b/src/Components/CreateDefinition.php @@ -93,6 +93,10 @@ class CreateDefinition extends Component 'ENFORCED' => 14, 'NOT' => 15, 'COMPRESSED' => 16, + 'SRID' => [ + 17, + 'var', + ], // Common entries. // // NOTE: Some of the common options are not in the same order which diff --git a/src/Lexer.php b/src/Lexer.php index 5a051a28..782dda66 100644 --- a/src/Lexer.php +++ b/src/Lexer.php @@ -677,7 +677,7 @@ public function parseComment() // - "SELECT */* comment */ FROM ..." // - "SELECT 2*/* comment */3 AS `six`;" $next = $this->last + 1; - if (($next < $this->len) && $this->str[$next] === '*') { + if (($next < $this->len) && $this->str[$next] === '*' && $token === '*/') { // Conflict in "*/*": first "*" was not for ending a comment. // Stop here and let other parsing method define the true behavior of that first star. $this->last = $iBak; diff --git a/tests/Lexer/LexerTest.php b/tests/Lexer/LexerTest.php index abee44f3..e310c94f 100644 --- a/tests/Lexer/LexerTest.php +++ b/tests/Lexer/LexerTest.php @@ -79,6 +79,7 @@ public static function lexProvider(): array ['lexer/lexOperator'], ['lexer/lexOperatorStarIsArithmetic'], ['lexer/lexOperatorStarIsWildcard'], + ['lexer/lexEmptyCStyleComment'], ['lexer/lexString'], ['lexer/lexStringErr1'], ['lexer/lexSymbol'], diff --git a/tests/Parser/CreateStatementTest.php b/tests/Parser/CreateStatementTest.php index 5c4ad057..c6f1e5a3 100644 --- a/tests/Parser/CreateStatementTest.php +++ b/tests/Parser/CreateStatementTest.php @@ -62,6 +62,7 @@ public static function createProvider(): array ['parser/parseCreateTableAsSelect'], ['parser/parseCreateTableLike'], ['parser/parseCreateTableSpatial'], + ['parser/parseCreateTableSRID'], ['parser/parseCreateTableTimestampWithPrecision'], ['parser/parseCreateTableEnforcedCheck'], ['parser/parseCreateTableNotEnforcedCheck'], diff --git a/tests/data/lexer/lexEmptyCStyleComment.in b/tests/data/lexer/lexEmptyCStyleComment.in new file mode 100644 index 00000000..b32191ce --- /dev/null +++ b/tests/data/lexer/lexEmptyCStyleComment.in @@ -0,0 +1,5 @@ +SELECT /**/ 1 +SELECT /*+*/ 1 +SELECT /***/ 1 +SELECT /** */ 1 +SELECT /* **/ 1 diff --git a/tests/data/lexer/lexEmptyCStyleComment.out b/tests/data/lexer/lexEmptyCStyleComment.out new file mode 100644 index 00000000..09a95d1f --- /dev/null +++ b/tests/data/lexer/lexEmptyCStyleComment.out @@ -0,0 +1,304 @@ +{ + "query": "SELECT /**/ 1\nSELECT /*+*/ 1\nSELECT /***/ 1\nSELECT /** */ 1\nSELECT /* **/ 1\n", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "SELECT /**/ 1\nSELECT /*+*/ 1\nSELECT /***/ 1\nSELECT /** */ 1\nSELECT /* **/ 1\n", + "len": 76, + "last": 76, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/**/", + "value": "/**/", + "keyword": null, + "type": 4, + "flags": 2, + "position": 7 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 11 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 14 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 20 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/*+*/", + "value": "/*+*/", + "keyword": null, + "type": 4, + "flags": 2, + "position": 21 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 27 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 28 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 29 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 35 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/***/", + "value": "/***/", + "keyword": null, + "type": 4, + "flags": 2, + "position": 36 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 42 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 43 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 44 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 50 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/** */", + "value": "/** */", + "keyword": null, + "type": 4, + "flags": 2, + "position": 51 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 57 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 58 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 59 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 60 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 66 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/* **/", + "value": "/* **/", + "keyword": null, + "type": 4, + "flags": 2, + "position": 67 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 73 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "1", + "value": 1, + "keyword": null, + "type": 6, + "flags": 0, + "position": 74 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 75 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 31, + "idx": 0 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": null, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file diff --git a/tests/data/lexer/lexOperatorStarIsWildcard.in b/tests/data/lexer/lexOperatorStarIsWildcard.in index 087c3b99..c9270891 100644 --- a/tests/data/lexer/lexOperatorStarIsWildcard.in +++ b/tests/data/lexer/lexOperatorStarIsWildcard.in @@ -6,7 +6,7 @@ SELECT a.*, b.* FROM SELECT a.*, /* with a comment */ b.* FROM SELECT a.*,/* with a comment */b.* FROM SELECT a.* /* comment */ FROM --- SELECT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.) +SELECT a.*/* comment */ FROM SELECT DISTINCT * FROM SELECT DISTINCT *FROM SELECT DISTINCT a.* FROM @@ -15,7 +15,7 @@ SELECT DISTINCT a.*, b.* FROM SELECT DISTINCT a.*, /* with a comment */ b.* FROM SELECT DISTINCT a.*,/* with a comment */b.* FROM SELECT DISTINCT a.* /* comment */ FROM --- SELECT DISTINCT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.) +SELECT DISTINCT a.*/* comment */ FROM SELECT `*` FROM table_name SELECT `*`.* FROM table_name AS `*` SELECT COUNT(*) FROM table_name diff --git a/tests/data/lexer/lexOperatorStarIsWildcard.out b/tests/data/lexer/lexOperatorStarIsWildcard.out index 339129dd..68bb6bfa 100644 --- a/tests/data/lexer/lexOperatorStarIsWildcard.out +++ b/tests/data/lexer/lexOperatorStarIsWildcard.out @@ -1,10 +1,10 @@ { - "query": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\n-- SELECT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\n-- SELECT DISTINCT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", + "query": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\nSELECT a.*/* comment */ FROM\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\nSELECT DISTINCT a.*/* comment */ FROM\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", "lexer": { "@type": "PhpMyAdmin\\SqlParser\\Lexer", - "str": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\n-- SELECT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\n-- SELECT DISTINCT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", - "len": 1348, - "last": 1348, + "str": "SELECT * FROM\nSELECT *FROM\nSELECT a.* FROM\nSELECT a.*,b.* FROM\nSELECT a.*, b.* FROM\nSELECT a.*, /* with a comment */ b.* FROM\nSELECT a.*,/* with a comment */b.* FROM\nSELECT a.* /* comment */ FROM\nSELECT a.*/* comment */ FROM\nSELECT DISTINCT * FROM\nSELECT DISTINCT *FROM\nSELECT DISTINCT a.* FROM\nSELECT DISTINCT a.*,b.* FROM\nSELECT DISTINCT a.*, b.* FROM\nSELECT DISTINCT a.*, /* with a comment */ b.* FROM\nSELECT DISTINCT a.*,/* with a comment */b.* FROM\nSELECT DISTINCT a.* /* comment */ FROM\nSELECT DISTINCT a.*/* comment */ FROM\nSELECT `*` FROM table_name\nSELECT `*`.* FROM table_name AS `*`\nSELECT COUNT(*) FROM table_name\nSELECT COUNT( * ) FROM table_name\nSELECT COUNT( * /* comment with *,USING,FROM */) FROM table_name\nSELECT COUNT(`*`) FROM table_name\nSELECT 1 FROM table_name WHERE LABEL LIKE '%*%'\nDELETE a.* USING\nDELETE a.*, b.* USING\nDELETE a.* ,b.* USING\nDELETE a.* , b.* USING\nDELETE a.* /* comment */ USING\nDELETE a.* /* comment */, b.* /*comment*/ USING\nDELETE a.* /* comment */ ,b.* /*comment*/ USING\nDELETE a.* /* comment */ , b.* /*comment*/ USING\n\n", + "len": 1068, + "last": 1068, "list": { "@type": "PhpMyAdmin\\SqlParser\\TokensList", "tokens": [ @@ -748,12 +748,75 @@ }, { "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- SELECT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)", - "value": "-- SELECT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 196 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 202 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "a", + "value": "a", + "keyword": null, + "type": 0, + "flags": 0, + "position": 203 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ".", + "value": ".", + "keyword": null, + "type": 2, + "flags": 16, + "position": 204 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "*", + "value": "*", + "keyword": null, + "type": 2, + "flags": 16, + "position": 205 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/* comment */", + "value": "/* comment */", "keyword": null, "type": 4, - "flags": 4, - "position": 196 + "flags": 2, + "position": 206 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 219 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FROM", + "value": "FROM", + "keyword": "FROM", + "type": 1, + "flags": 3, + "position": 220 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -762,7 +825,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 364 + "position": 224 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -771,7 +834,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 365 + "position": 225 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -780,7 +843,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 371 + "position": 231 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -789,7 +852,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 372 + "position": 232 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -798,7 +861,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 380 + "position": 240 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -807,7 +870,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 381 + "position": 241 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -816,7 +879,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 382 + "position": 242 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -825,7 +888,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 383 + "position": 243 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -834,7 +897,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 387 + "position": 247 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -843,7 +906,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 388 + "position": 248 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -852,7 +915,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 394 + "position": 254 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -861,7 +924,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 395 + "position": 255 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -870,7 +933,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 403 + "position": 263 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -879,7 +942,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 404 + "position": 264 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -888,7 +951,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 405 + "position": 265 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -897,7 +960,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 409 + "position": 269 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -906,7 +969,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 410 + "position": 270 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -915,7 +978,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 416 + "position": 276 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -924,7 +987,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 417 + "position": 277 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -933,7 +996,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 425 + "position": 285 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -942,7 +1005,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 426 + "position": 286 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -951,7 +1014,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 427 + "position": 287 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -960,7 +1023,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 428 + "position": 288 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -969,7 +1032,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 429 + "position": 289 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -978,7 +1041,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 430 + "position": 290 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -987,7 +1050,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 434 + "position": 294 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -996,7 +1059,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 435 + "position": 295 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1005,7 +1068,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 441 + "position": 301 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1014,7 +1077,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 442 + "position": 302 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1023,7 +1086,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 450 + "position": 310 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1032,7 +1095,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 451 + "position": 311 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1041,7 +1104,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 452 + "position": 312 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1050,7 +1113,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 453 + "position": 313 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1059,7 +1122,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 454 + "position": 314 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1068,7 +1131,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 455 + "position": 315 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1077,7 +1140,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 456 + "position": 316 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1086,7 +1149,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 457 + "position": 317 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1095,7 +1158,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 458 + "position": 318 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1104,7 +1167,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 459 + "position": 319 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1113,7 +1176,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 463 + "position": 323 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1122,7 +1185,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 464 + "position": 324 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1131,7 +1194,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 470 + "position": 330 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1140,7 +1203,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 471 + "position": 331 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1149,7 +1212,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 479 + "position": 339 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1158,7 +1221,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 480 + "position": 340 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1167,7 +1230,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 481 + "position": 341 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1176,7 +1239,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 482 + "position": 342 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1185,7 +1248,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 483 + "position": 343 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1194,7 +1257,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 484 + "position": 344 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1203,7 +1266,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 485 + "position": 345 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1212,7 +1275,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 486 + "position": 346 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1221,7 +1284,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 487 + "position": 347 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1230,7 +1293,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 488 + "position": 348 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1239,7 +1302,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 489 + "position": 349 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1248,7 +1311,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 493 + "position": 353 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1257,7 +1320,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 494 + "position": 354 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1266,7 +1329,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 500 + "position": 360 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1275,7 +1338,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 501 + "position": 361 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1284,7 +1347,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 509 + "position": 369 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1293,7 +1356,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 510 + "position": 370 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1302,7 +1365,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 511 + "position": 371 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1311,7 +1374,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 512 + "position": 372 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1320,7 +1383,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 513 + "position": 373 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1329,7 +1392,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 514 + "position": 374 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1338,7 +1401,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 515 + "position": 375 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1347,7 +1410,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 535 + "position": 395 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1356,7 +1419,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 536 + "position": 396 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1365,7 +1428,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 537 + "position": 397 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1374,7 +1437,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 538 + "position": 398 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1383,7 +1446,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 539 + "position": 399 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1392,7 +1455,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 540 + "position": 400 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1401,7 +1464,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 544 + "position": 404 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1410,7 +1473,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 545 + "position": 405 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1419,7 +1482,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 551 + "position": 411 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1428,7 +1491,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 552 + "position": 412 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1437,7 +1500,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 560 + "position": 420 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1446,7 +1509,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 561 + "position": 421 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1455,7 +1518,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 562 + "position": 422 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1464,7 +1527,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 563 + "position": 423 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1473,7 +1536,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 564 + "position": 424 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1482,7 +1545,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 565 + "position": 425 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1491,7 +1554,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 585 + "position": 445 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1500,7 +1563,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 586 + "position": 446 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1509,7 +1572,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 587 + "position": 447 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1518,7 +1581,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 588 + "position": 448 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1527,7 +1590,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 589 + "position": 449 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1536,7 +1599,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 593 + "position": 453 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1545,7 +1608,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 594 + "position": 454 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1554,7 +1617,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 600 + "position": 460 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1563,7 +1626,7 @@ "keyword": "DISTINCT", "type": 1, "flags": 3, - "position": 601 + "position": 461 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1572,7 +1635,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 609 + "position": 469 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1581,7 +1644,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 610 + "position": 470 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1590,7 +1653,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 611 + "position": 471 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1599,7 +1662,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 612 + "position": 472 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1608,7 +1671,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 613 + "position": 473 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1617,7 +1680,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 614 + "position": 474 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1626,7 +1689,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 627 + "position": 487 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1635,7 +1698,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 628 + "position": 488 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1644,16 +1707,97 @@ "keyword": null, "type": 3, "flags": 0, - "position": 632 + "position": 492 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SELECT", + "value": "SELECT", + "keyword": "SELECT", + "type": 1, + "flags": 3, + "position": 493 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 499 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "DISTINCT", + "value": "DISTINCT", + "keyword": "DISTINCT", + "type": 1, + "flags": 3, + "position": 500 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", - "token": "-- SELECT DISTINCT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)", - "value": "-- SELECT DISTINCT a.*/* comment */ FROM (This one is not working yet because of https://github.com/phpmyadmin/sql-parser/issues/285. Please uncomment when this issue is fixed.)", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 508 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "a", + "value": "a", + "keyword": null, + "type": 0, + "flags": 0, + "position": 509 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ".", + "value": ".", + "keyword": null, + "type": 2, + "flags": 16, + "position": 510 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "*", + "value": "*", + "keyword": null, + "type": 2, + "flags": 16, + "position": 511 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "/* comment */", + "value": "/* comment */", "keyword": null, "type": 4, - "flags": 4, - "position": 633 + "flags": 2, + "position": 512 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 525 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "FROM", + "value": "FROM", + "keyword": "FROM", + "type": 1, + "flags": 3, + "position": 526 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1662,7 +1806,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 810 + "position": 530 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1671,7 +1815,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 811 + "position": 531 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1680,7 +1824,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 817 + "position": 537 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1689,7 +1833,7 @@ "keyword": null, "type": 8, "flags": 2, - "position": 818 + "position": 538 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1698,7 +1842,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 821 + "position": 541 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1707,7 +1851,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 822 + "position": 542 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1716,7 +1860,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 826 + "position": 546 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1725,7 +1869,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 827 + "position": 547 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1734,7 +1878,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 837 + "position": 557 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1743,7 +1887,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 838 + "position": 558 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1752,7 +1896,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 844 + "position": 564 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1761,7 +1905,7 @@ "keyword": null, "type": 8, "flags": 2, - "position": 845 + "position": 565 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1770,7 +1914,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 848 + "position": 568 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1779,7 +1923,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 849 + "position": 569 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1788,7 +1932,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 850 + "position": 570 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1797,7 +1941,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 851 + "position": 571 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1806,7 +1950,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 855 + "position": 575 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1815,7 +1959,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 856 + "position": 576 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1824,7 +1968,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 866 + "position": 586 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1833,7 +1977,7 @@ "keyword": "AS", "type": 1, "flags": 3, - "position": 867 + "position": 587 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1842,7 +1986,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 869 + "position": 589 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1851,7 +1995,7 @@ "keyword": null, "type": 8, "flags": 2, - "position": 870 + "position": 590 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1860,7 +2004,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 873 + "position": 593 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1869,7 +2013,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 874 + "position": 594 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1878,7 +2022,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 880 + "position": 600 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1887,7 +2031,7 @@ "keyword": "COUNT", "type": 1, "flags": 33, - "position": 881 + "position": 601 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1896,7 +2040,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 886 + "position": 606 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1905,7 +2049,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 887 + "position": 607 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1914,7 +2058,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 888 + "position": 608 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1923,7 +2067,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 889 + "position": 609 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1932,7 +2076,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 890 + "position": 610 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1941,7 +2085,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 894 + "position": 614 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1950,7 +2094,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 895 + "position": 615 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1959,7 +2103,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 905 + "position": 625 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1968,7 +2112,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 906 + "position": 626 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1977,7 +2121,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 912 + "position": 632 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1986,7 +2130,7 @@ "keyword": "COUNT", "type": 1, "flags": 33, - "position": 913 + "position": 633 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -1995,7 +2139,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 918 + "position": 638 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2004,7 +2148,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 919 + "position": 639 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2013,7 +2157,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 920 + "position": 640 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2022,7 +2166,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 921 + "position": 641 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2031,7 +2175,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 922 + "position": 642 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2040,7 +2184,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 923 + "position": 643 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2049,7 +2193,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 924 + "position": 644 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2058,7 +2202,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 928 + "position": 648 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2067,7 +2211,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 929 + "position": 649 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2076,7 +2220,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 939 + "position": 659 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2085,7 +2229,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 940 + "position": 660 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2094,7 +2238,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 946 + "position": 666 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2103,7 +2247,7 @@ "keyword": "COUNT", "type": 1, "flags": 33, - "position": 947 + "position": 667 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2112,7 +2256,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 952 + "position": 672 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2121,7 +2265,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 953 + "position": 673 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2130,7 +2274,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 954 + "position": 674 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2139,7 +2283,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 955 + "position": 675 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2148,7 +2292,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 956 + "position": 676 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2157,7 +2301,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 987 + "position": 707 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2166,7 +2310,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 988 + "position": 708 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2175,7 +2319,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 989 + "position": 709 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2184,7 +2328,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 993 + "position": 713 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2193,7 +2337,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 994 + "position": 714 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2202,7 +2346,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1004 + "position": 724 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2211,7 +2355,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 1005 + "position": 725 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2220,7 +2364,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1011 + "position": 731 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2229,7 +2373,7 @@ "keyword": "COUNT", "type": 1, "flags": 33, - "position": 1012 + "position": 732 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2238,7 +2382,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1017 + "position": 737 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2247,7 +2391,7 @@ "keyword": null, "type": 8, "flags": 2, - "position": 1018 + "position": 738 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2256,7 +2400,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1021 + "position": 741 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2265,7 +2409,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1022 + "position": 742 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2274,7 +2418,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 1023 + "position": 743 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2283,7 +2427,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1027 + "position": 747 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2292,7 +2436,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 1028 + "position": 748 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2301,7 +2445,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1038 + "position": 758 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2310,7 +2454,7 @@ "keyword": "SELECT", "type": 1, "flags": 3, - "position": 1039 + "position": 759 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2319,7 +2463,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1045 + "position": 765 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2328,7 +2472,7 @@ "keyword": null, "type": 6, "flags": 0, - "position": 1046 + "position": 766 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2337,7 +2481,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1047 + "position": 767 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2346,7 +2490,7 @@ "keyword": "FROM", "type": 1, "flags": 3, - "position": 1048 + "position": 768 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2355,7 +2499,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1052 + "position": 772 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2364,7 +2508,7 @@ "keyword": "TABLE_NAME", "type": 1, "flags": 1, - "position": 1053 + "position": 773 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2373,7 +2517,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1063 + "position": 783 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2382,7 +2526,7 @@ "keyword": "WHERE", "type": 1, "flags": 3, - "position": 1064 + "position": 784 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2391,7 +2535,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1069 + "position": 789 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2400,7 +2544,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1070 + "position": 790 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2409,7 +2553,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1075 + "position": 795 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2418,7 +2562,7 @@ "keyword": "LIKE", "type": 1, "flags": 3, - "position": 1076 + "position": 796 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2427,7 +2571,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1080 + "position": 800 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2436,7 +2580,7 @@ "keyword": null, "type": 7, "flags": 1, - "position": 1081 + "position": 801 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2445,7 +2589,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1086 + "position": 806 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2454,7 +2598,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1087 + "position": 807 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2463,7 +2607,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1093 + "position": 813 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2472,7 +2616,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1094 + "position": 814 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2481,7 +2625,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1095 + "position": 815 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2490,7 +2634,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1096 + "position": 816 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2499,7 +2643,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1097 + "position": 817 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2508,7 +2652,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1098 + "position": 818 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2517,7 +2661,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1103 + "position": 823 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2526,7 +2670,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1104 + "position": 824 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2535,7 +2679,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1110 + "position": 830 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2544,7 +2688,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1111 + "position": 831 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2553,7 +2697,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1112 + "position": 832 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2562,7 +2706,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1113 + "position": 833 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2571,7 +2715,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1114 + "position": 834 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2580,7 +2724,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1115 + "position": 835 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2589,7 +2733,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1116 + "position": 836 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2598,7 +2742,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1117 + "position": 837 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2607,7 +2751,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1118 + "position": 838 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2616,7 +2760,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1119 + "position": 839 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2625,7 +2769,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1120 + "position": 840 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2634,7 +2778,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1125 + "position": 845 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2643,7 +2787,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1126 + "position": 846 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2652,7 +2796,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1132 + "position": 852 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2661,7 +2805,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1133 + "position": 853 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2670,7 +2814,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1134 + "position": 854 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2679,7 +2823,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1135 + "position": 855 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2688,7 +2832,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1136 + "position": 856 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2697,7 +2841,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1137 + "position": 857 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2706,7 +2850,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1138 + "position": 858 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2715,7 +2859,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1139 + "position": 859 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2724,7 +2868,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1140 + "position": 860 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2733,7 +2877,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1141 + "position": 861 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2742,7 +2886,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1142 + "position": 862 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2751,7 +2895,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1147 + "position": 867 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2760,7 +2904,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1148 + "position": 868 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2769,7 +2913,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1154 + "position": 874 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2778,7 +2922,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1155 + "position": 875 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2787,7 +2931,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1156 + "position": 876 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2796,7 +2940,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1157 + "position": 877 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2805,7 +2949,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1158 + "position": 878 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2814,7 +2958,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1159 + "position": 879 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2823,7 +2967,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1160 + "position": 880 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2832,7 +2976,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1161 + "position": 881 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2841,7 +2985,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1162 + "position": 882 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2850,7 +2994,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1163 + "position": 883 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2859,7 +3003,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1164 + "position": 884 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2868,7 +3012,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1165 + "position": 885 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2877,7 +3021,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1170 + "position": 890 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2886,7 +3030,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1171 + "position": 891 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2895,7 +3039,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1177 + "position": 897 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2904,7 +3048,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1178 + "position": 898 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2913,7 +3057,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1179 + "position": 899 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2922,7 +3066,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1180 + "position": 900 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2931,7 +3075,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1181 + "position": 901 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2940,7 +3084,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1182 + "position": 902 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2949,7 +3093,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1195 + "position": 915 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2958,7 +3102,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1196 + "position": 916 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2967,7 +3111,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1201 + "position": 921 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2976,7 +3120,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1202 + "position": 922 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2985,7 +3129,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1208 + "position": 928 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -2994,7 +3138,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1209 + "position": 929 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3003,7 +3147,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1210 + "position": 930 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3012,7 +3156,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1211 + "position": 931 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3021,7 +3165,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1212 + "position": 932 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3030,7 +3174,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1213 + "position": 933 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3039,7 +3183,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1226 + "position": 946 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3048,7 +3192,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1227 + "position": 947 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3057,7 +3201,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1228 + "position": 948 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3066,7 +3210,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1229 + "position": 949 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3075,7 +3219,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1230 + "position": 950 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3084,7 +3228,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1231 + "position": 951 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3093,7 +3237,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1232 + "position": 952 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3102,7 +3246,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1243 + "position": 963 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3111,7 +3255,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1244 + "position": 964 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3120,7 +3264,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1249 + "position": 969 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3129,7 +3273,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1250 + "position": 970 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3138,7 +3282,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1256 + "position": 976 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3147,7 +3291,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1257 + "position": 977 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3156,7 +3300,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1258 + "position": 978 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3165,7 +3309,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1259 + "position": 979 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3174,7 +3318,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1260 + "position": 980 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3183,7 +3327,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1261 + "position": 981 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3192,7 +3336,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1274 + "position": 994 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3201,7 +3345,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1275 + "position": 995 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3210,7 +3354,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1276 + "position": 996 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3219,7 +3363,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1277 + "position": 997 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3228,7 +3372,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1278 + "position": 998 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3237,7 +3381,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1279 + "position": 999 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3246,7 +3390,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1280 + "position": 1000 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3255,7 +3399,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1291 + "position": 1011 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3264,7 +3408,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1292 + "position": 1012 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3273,7 +3417,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1297 + "position": 1017 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3282,7 +3426,7 @@ "keyword": "DELETE", "type": 1, "flags": 3, - "position": 1298 + "position": 1018 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3291,7 +3435,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1304 + "position": 1024 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3300,7 +3444,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1305 + "position": 1025 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3309,7 +3453,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1306 + "position": 1026 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3318,7 +3462,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1307 + "position": 1027 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3327,7 +3471,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1308 + "position": 1028 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3336,7 +3480,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1309 + "position": 1029 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3345,7 +3489,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1322 + "position": 1042 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3354,7 +3498,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1323 + "position": 1043 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3363,7 +3507,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1324 + "position": 1044 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3372,7 +3516,7 @@ "keyword": null, "type": 0, "flags": 0, - "position": 1325 + "position": 1045 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3381,7 +3525,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1326 + "position": 1046 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3390,7 +3534,7 @@ "keyword": null, "type": 2, "flags": 16, - "position": 1327 + "position": 1047 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3399,7 +3543,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1328 + "position": 1048 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3408,7 +3552,7 @@ "keyword": null, "type": 4, "flags": 2, - "position": 1329 + "position": 1049 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3417,7 +3561,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1340 + "position": 1060 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3426,7 +3570,7 @@ "keyword": "USING", "type": 1, "flags": 3, - "position": 1341 + "position": 1061 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3435,7 +3579,7 @@ "keyword": null, "type": 3, "flags": 0, - "position": 1346 + "position": 1066 }, { "@type": "PhpMyAdmin\\SqlParser\\Token", @@ -3447,7 +3591,7 @@ "position": null } ], - "count": 382, + "count": 398, "idx": 0 }, "delimiter": ";", diff --git a/tests/data/parser/parseCreateTableSRID.in b/tests/data/parser/parseCreateTableSRID.in new file mode 100644 index 00000000..1fbcbf9d --- /dev/null +++ b/tests/data/parser/parseCreateTableSRID.in @@ -0,0 +1,7 @@ +CREATE TABLE IF NOT EXISTS `public_areas` ( + `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, + `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL, + `area` geometry NOT NULL SRID 4326, + `properties` json NOT NULL, + `title` varchar(100) NOT NULL +); \ No newline at end of file diff --git a/tests/data/parser/parseCreateTableSRID.out b/tests/data/parser/parseCreateTableSRID.out new file mode 100644 index 00000000..4093100c --- /dev/null +++ b/tests/data/parser/parseCreateTableSRID.out @@ -0,0 +1,823 @@ +{ + "query": "CREATE TABLE IF NOT EXISTS `public_areas` (\n `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,\n `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL,\n `area` geometry NOT NULL SRID 4326,\n `properties` json NOT NULL,\n `title` varchar(100) NOT NULL\n);", + "lexer": { + "@type": "PhpMyAdmin\\SqlParser\\Lexer", + "str": "CREATE TABLE IF NOT EXISTS `public_areas` (\n `id` INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,\n `kind` enum('COUNTRY','REGION','DEPARTMENT','MUNICIPALITY') NOT NULL,\n `area` geometry NOT NULL SRID 4326,\n `properties` json NOT NULL,\n `title` varchar(100) NOT NULL\n);", + "len": 275, + "last": 275, + "list": { + "@type": "PhpMyAdmin\\SqlParser\\TokensList", + "tokens": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "CREATE", + "value": "CREATE", + "keyword": "CREATE", + "type": 1, + "flags": 3, + "position": 0 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 6 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "TABLE", + "value": "TABLE", + "keyword": "TABLE", + "type": 1, + "flags": 3, + "position": 7 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 12 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "IF NOT EXISTS", + "value": "IF NOT EXISTS", + "keyword": "IF NOT EXISTS", + "type": 1, + "flags": 7, + "position": 13 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 26 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`public_areas`", + "value": "public_areas", + "keyword": null, + "type": 8, + "flags": 2, + "position": 27 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 41 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 42 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 43 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`id`", + "value": "id", + "keyword": null, + "type": 8, + "flags": 2, + "position": 46 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 50 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "INT", + "value": "INT", + "keyword": "INT", + "type": 1, + "flags": 11, + "position": 51 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 54 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "UNSIGNED", + "value": "UNSIGNED", + "keyword": "UNSIGNED", + "type": 1, + "flags": 3, + "position": 55 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 63 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NOT NULL", + "value": "NOT NULL", + "keyword": "NOT NULL", + "type": 1, + "flags": 7, + "position": 64 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 72 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "PRIMARY KEY", + "value": "PRIMARY KEY", + "keyword": "PRIMARY KEY", + "type": 1, + "flags": 23, + "position": 73 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 84 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "AUTO_INCREMENT", + "value": "AUTO_INCREMENT", + "keyword": "AUTO_INCREMENT", + "type": 1, + "flags": 1, + "position": 85 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 99 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 100 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`kind`", + "value": "kind", + "keyword": null, + "type": 8, + "flags": 2, + "position": 103 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 109 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "enum", + "value": "enum", + "keyword": "ENUM", + "type": 1, + "flags": 9, + "position": 110 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 114 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "'COUNTRY'", + "value": "COUNTRY", + "keyword": null, + "type": 7, + "flags": 1, + "position": 115 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 124 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "'REGION'", + "value": "REGION", + "keyword": null, + "type": 7, + "flags": 1, + "position": 125 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 133 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "'DEPARTMENT'", + "value": "DEPARTMENT", + "keyword": null, + "type": 7, + "flags": 1, + "position": 134 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 146 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "'MUNICIPALITY'", + "value": "MUNICIPALITY", + "keyword": null, + "type": 7, + "flags": 1, + "position": 147 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 161 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 162 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NOT NULL", + "value": "NOT NULL", + "keyword": "NOT NULL", + "type": 1, + "flags": 7, + "position": 163 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 171 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 172 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`area`", + "value": "area", + "keyword": null, + "type": 8, + "flags": 2, + "position": 175 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 181 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "geometry", + "value": "geometry", + "keyword": "GEOMETRY", + "type": 1, + "flags": 9, + "position": 182 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 190 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NOT NULL", + "value": "NOT NULL", + "keyword": "NOT NULL", + "type": 1, + "flags": 7, + "position": 191 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 199 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "SRID", + "value": "SRID", + "keyword": "SRID", + "type": 1, + "flags": 33, + "position": 200 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 204 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "4326", + "value": 4326, + "keyword": null, + "type": 6, + "flags": 0, + "position": 205 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 209 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 210 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`properties`", + "value": "properties", + "keyword": null, + "type": 8, + "flags": 2, + "position": 213 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 225 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "json", + "value": "json", + "keyword": "JSON", + "type": 1, + "flags": 9, + "position": 226 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 230 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NOT NULL", + "value": "NOT NULL", + "keyword": "NOT NULL", + "type": 1, + "flags": 7, + "position": 231 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ",", + "value": ",", + "keyword": null, + "type": 2, + "flags": 16, + "position": 239 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 240 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "`title`", + "value": "title", + "keyword": null, + "type": 8, + "flags": 2, + "position": 243 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 250 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "varchar", + "value": "VARCHAR", + "keyword": "VARCHAR", + "type": 1, + "flags": 11, + "position": 251 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "(", + "value": "(", + "keyword": null, + "type": 2, + "flags": 16, + "position": 258 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "100", + "value": 100, + "keyword": null, + "type": 6, + "flags": 0, + "position": 259 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 262 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": " ", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 263 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "NOT NULL", + "value": "NOT NULL", + "keyword": "NOT NULL", + "type": 1, + "flags": 7, + "position": 264 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": "\n", + "value": " ", + "keyword": null, + "type": 3, + "flags": 0, + "position": 272 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ")", + "value": ")", + "keyword": null, + "type": 2, + "flags": 16, + "position": 273 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": ";", + "value": ";", + "keyword": null, + "type": 9, + "flags": 0, + "position": 274 + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Token", + "token": null, + "value": null, + "keyword": null, + "type": 9, + "flags": 0, + "position": null + } + ], + "count": 69, + "idx": 69 + }, + "delimiter": ";", + "delimiterLen": 1, + "strict": false, + "errors": [] + }, + "parser": { + "@type": "PhpMyAdmin\\SqlParser\\Parser", + "list": { + "@type": "@1" + }, + "statements": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Statements\\CreateStatement", + "name": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\Expression", + "database": null, + "table": "public_areas", + "column": null, + "expr": "`public_areas`", + "alias": null, + "function": null, + "subquery": null + }, + "entityOptions": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + }, + "fields": [ + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "id", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "INT", + "parameters": [], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "4": "UNSIGNED" + } + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": "NOT NULL", + "4": "PRIMARY KEY", + "3": "AUTO_INCREMENT" + } + } + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "kind", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "ENUM", + "parameters": [ + "'COUNTRY'", + "'REGION'", + "'DEPARTMENT'", + "'MUNICIPALITY'" + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": "NOT NULL" + } + } + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "area", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "GEOMETRY", + "parameters": [], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": "NOT NULL", + "17": { + "name": "SRID", + "equals": false, + "expr": "4326", + "value": "4326" + } + } + } + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "properties", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "JSON", + "parameters": [], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": "NOT NULL" + } + } + }, + { + "@type": "PhpMyAdmin\\SqlParser\\Components\\CreateDefinition", + "name": "title", + "isConstraint": null, + "type": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\DataType", + "name": "VARCHAR", + "parameters": [ + "100" + ], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": [] + } + }, + "key": null, + "references": null, + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "1": "NOT NULL" + } + } + } + ], + "with": null, + "select": null, + "like": null, + "partitionBy": null, + "partitionsNum": null, + "subpartitionBy": null, + "subpartitionsNum": null, + "partitions": null, + "table": null, + "return": null, + "parameters": null, + "body": [], + "options": { + "@type": "PhpMyAdmin\\SqlParser\\Components\\OptionsArray", + "options": { + "6": "TABLE", + "7": "IF NOT EXISTS" + } + }, + "first": 0, + "last": 67 + } + ], + "brackets": 0, + "strict": false, + "errors": [] + }, + "errors": { + "lexer": [], + "parser": [] + } +} \ No newline at end of file