feat: #290 support dtstack SparkSQL/HiveSQL lifecycle (#292)

This commit is contained in:
琉易 2024-04-19 09:32:10 +08:00 committed by GitHub
parent 8bb27ee771
commit da77180a50
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
23 changed files with 18453 additions and 18129 deletions

View File

@ -214,6 +214,7 @@ KW_LEADING : 'LEADING';
KW_LEFT : 'LEFT'; KW_LEFT : 'LEFT';
KW_LESS : 'LESS'; KW_LESS : 'LESS';
KW_LEVEL : 'LEVEL'; KW_LEVEL : 'LEVEL';
KW_LIFECYCLE : 'LIFECYCLE';
KW_LIKE : 'LIKE'; KW_LIKE : 'LIKE';
KW_LIMIT : 'LIMIT'; KW_LIMIT : 'LIMIT';
KW_LINES : 'LINES'; KW_LINES : 'LINES';

View File

@ -657,6 +657,11 @@ tableComment
: KW_COMMENT comment=StringLiteral : KW_COMMENT comment=StringLiteral
; ;
// dtstack SparkSQL/HiveSQL lifecycle
tableLifecycle
: KW_LIFECYCLE Number
;
createTablePartitionSpec createTablePartitionSpec
: KW_PARTITIONED KW_BY ( : KW_PARTITIONED KW_BY (
LPAREN (opt1=createTablePartitionColumnTypeSpec | opt2=createTablePartitionColumnSpec) LPAREN (opt1=createTablePartitionColumnTypeSpec | opt2=createTablePartitionColumnSpec)
@ -1630,13 +1635,17 @@ Rules for parsing createtable
createTableStatement createTableStatement
: KW_CREATE temp=KW_TEMPORARY? trans=KW_TRANSACTIONAL? ext=KW_EXTERNAL? KW_TABLE ifNotExists? name=tableNameCreate ( : KW_CREATE temp=KW_TEMPORARY? trans=KW_TRANSACTIONAL? ext=KW_EXTERNAL? KW_TABLE ifNotExists? name=tableNameCreate (
likeTableOrFile createTablePartitionSpec? tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed? likeTableOrFile createTablePartitionSpec? tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed?
| (LPAREN columnNameTypeOrConstraintList RPAREN)? tableComment? createTablePartitionSpec? tableBuckets? tableSkewed? tableRowFormat? | (LPAREN columnNameTypeOrConstraintList RPAREN)? tableComment? tableLifecycle? createTablePartitionSpec? tableBuckets? tableSkewed?
tableFileFormat? tableLocation? tablePropertiesPrefixed? (KW_AS selectStatementWithCTE)? tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed? (
KW_AS selectStatementWithCTE
)?
) )
| KW_CREATE mgd=KW_MANAGED KW_TABLE ifNotExists? name=tableNameCreate ( | KW_CREATE mgd=KW_MANAGED KW_TABLE ifNotExists? name=tableNameCreate (
likeTableOrFile tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed? likeTableOrFile tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed?
| (LPAREN columnNameTypeOrConstraintList RPAREN)? tableComment? createTablePartitionSpec? tableBuckets? tableSkewed? tableRowFormat? | (LPAREN columnNameTypeOrConstraintList RPAREN)? tableComment? tableLifecycle? createTablePartitionSpec? tableBuckets? tableSkewed?
tableFileFormat? tableLocation? tablePropertiesPrefixed? (KW_AS selectStatementWithCTE)? tableRowFormat? tableFileFormat? tableLocation? tablePropertiesPrefixed? (
KW_AS selectStatementWithCTE
)?
) )
; ;
@ -2685,6 +2694,7 @@ nonReserved
| KW_KILL | KW_KILL
| KW_LAST | KW_LAST
| KW_LEVEL | KW_LEVEL
| KW_LIFECYCLE
| KW_LIMIT | KW_LIMIT
| KW_LINES | KW_LINES
| KW_LOAD | KW_LOAD

View File

@ -217,6 +217,7 @@ KW_LATERAL : 'LATERAL';
KW_LAZY : 'LAZY'; KW_LAZY : 'LAZY';
KW_LEADING : 'LEADING'; KW_LEADING : 'LEADING';
KW_LEFT : 'LEFT'; KW_LEFT : 'LEFT';
KW_LIFECYCLE : 'LIFECYCLE';
KW_LIKE : 'LIKE'; KW_LIKE : 'LIKE';
KW_ILIKE : 'ILIKE'; KW_ILIKE : 'ILIKE';
KW_LIMIT : 'LIMIT'; KW_LIMIT : 'LIMIT';

View File

@ -65,6 +65,7 @@ statement
| createFileFormat | createFileFormat
| locationSpec | locationSpec
| (KW_TBLPROPERTIES tableProps=propertyList) | (KW_TBLPROPERTIES tableProps=propertyList)
| tableLifecycle
)* # createTableLike )* # createTableLike
| replaceTableHeader (LEFT_PAREN createOrReplaceTableColTypeList RIGHT_PAREN)? tableProvider? createTableClauses ( | replaceTableHeader (LEFT_PAREN createOrReplaceTableColTypeList RIGHT_PAREN)? tableProvider? createTableClauses (
KW_AS? query KW_AS? query
@ -351,9 +352,15 @@ createTableClauses
| locationSpec | locationSpec
| commentSpec | commentSpec
| (KW_TBLPROPERTIES tableProps=propertyList) | (KW_TBLPROPERTIES tableProps=propertyList)
| tableLifecycle
)* )*
; ;
// dtstack SparkSQL/HiveSQL lifecycle
tableLifecycle
: KW_LIFECYCLE INTEGER_VALUE
;
propertyList propertyList
: LEFT_PAREN property (COMMA property)* RIGHT_PAREN : LEFT_PAREN property (COMMA property)* RIGHT_PAREN
; ;
@ -1849,6 +1856,7 @@ nonReserved
| KW_LAST | KW_LAST
| KW_LAZY | KW_LAZY
| KW_LEADING | KW_LEADING
| KW_LIFECYCLE
| KW_LIKE | KW_LIKE
| KW_LONG | KW_LONG
| KW_ILIKE | KW_ILIKE

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -118,6 +118,7 @@ import { ExecutedAsSpecContext } from "./HiveSqlParser.js";
import { DefinedAsSpecContext } from "./HiveSqlParser.js"; import { DefinedAsSpecContext } from "./HiveSqlParser.js";
import { ShowStmtIdentifierContext } from "./HiveSqlParser.js"; import { ShowStmtIdentifierContext } from "./HiveSqlParser.js";
import { TableCommentContext } from "./HiveSqlParser.js"; import { TableCommentContext } from "./HiveSqlParser.js";
import { TableLifecycleContext } from "./HiveSqlParser.js";
import { CreateTablePartitionSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionSpecContext } from "./HiveSqlParser.js";
import { CreateTablePartitionColumnTypeSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionColumnTypeSpecContext } from "./HiveSqlParser.js";
import { CreateTablePartitionColumnSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionColumnSpecContext } from "./HiveSqlParser.js";
@ -1637,6 +1638,16 @@ export class HiveSqlParserListener implements ParseTreeListener {
* @param ctx the parse tree * @param ctx the parse tree
*/ */
exitTableComment?: (ctx: TableCommentContext) => void; exitTableComment?: (ctx: TableCommentContext) => void;
/**
* Enter a parse tree produced by `HiveSqlParser.tableLifecycle`.
* @param ctx the parse tree
*/
enterTableLifecycle?: (ctx: TableLifecycleContext) => void;
/**
* Exit a parse tree produced by `HiveSqlParser.tableLifecycle`.
* @param ctx the parse tree
*/
exitTableLifecycle?: (ctx: TableLifecycleContext) => void;
/** /**
* Enter a parse tree produced by `HiveSqlParser.createTablePartitionSpec`. * Enter a parse tree produced by `HiveSqlParser.createTablePartitionSpec`.
* @param ctx the parse tree * @param ctx the parse tree

View File

@ -118,6 +118,7 @@ import { ExecutedAsSpecContext } from "./HiveSqlParser.js";
import { DefinedAsSpecContext } from "./HiveSqlParser.js"; import { DefinedAsSpecContext } from "./HiveSqlParser.js";
import { ShowStmtIdentifierContext } from "./HiveSqlParser.js"; import { ShowStmtIdentifierContext } from "./HiveSqlParser.js";
import { TableCommentContext } from "./HiveSqlParser.js"; import { TableCommentContext } from "./HiveSqlParser.js";
import { TableLifecycleContext } from "./HiveSqlParser.js";
import { CreateTablePartitionSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionSpecContext } from "./HiveSqlParser.js";
import { CreateTablePartitionColumnTypeSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionColumnTypeSpecContext } from "./HiveSqlParser.js";
import { CreateTablePartitionColumnSpecContext } from "./HiveSqlParser.js"; import { CreateTablePartitionColumnSpecContext } from "./HiveSqlParser.js";
@ -1200,6 +1201,12 @@ export class HiveSqlParserVisitor<Result> extends AbstractParseTreeVisitor<Resul
* @return the visitor result * @return the visitor result
*/ */
visitTableComment?: (ctx: TableCommentContext) => Result; visitTableComment?: (ctx: TableCommentContext) => Result;
/**
* Visit a parse tree produced by `HiveSqlParser.tableLifecycle`.
* @param ctx the parse tree
* @return the visitor result
*/
visitTableLifecycle?: (ctx: TableLifecycleContext) => Result;
/** /**
* Visit a parse tree produced by `HiveSqlParser.createTablePartitionSpec`. * Visit a parse tree produced by `HiveSqlParser.createTablePartitionSpec`.
* @param ctx the parse tree * @param ctx the parse tree

File diff suppressed because one or more lines are too long

View File

@ -159,237 +159,238 @@ KW_LATERAL=158
KW_LAZY=159 KW_LAZY=159
KW_LEADING=160 KW_LEADING=160
KW_LEFT=161 KW_LEFT=161
KW_LIKE=162 KW_LIFECYCLE=162
KW_ILIKE=163 KW_LIKE=163
KW_LIMIT=164 KW_ILIKE=164
KW_LINES=165 KW_LIMIT=165
KW_LIST=166 KW_LINES=166
KW_LOAD=167 KW_LIST=167
KW_LOCAL=168 KW_LOAD=168
KW_LOCATION=169 KW_LOCAL=169
KW_LOCK=170 KW_LOCATION=170
KW_LOCKS=171 KW_LOCK=171
KW_LOGICAL=172 KW_LOCKS=172
KW_LONG=173 KW_LOGICAL=173
KW_MACRO=174 KW_LONG=174
KW_MATERIALIZED=175 KW_MACRO=175
KW_MAP=176 KW_MATERIALIZED=176
KW_MATCHED=177 KW_MAP=177
KW_MERGE=178 KW_MATCHED=178
KW_MICROSECOND=179 KW_MERGE=179
KW_MICROSECONDS=180 KW_MICROSECOND=180
KW_MILLISECOND=181 KW_MICROSECONDS=181
KW_MILLISECONDS=182 KW_MILLISECOND=182
KW_MINUTE=183 KW_MILLISECONDS=183
KW_MINUTES=184 KW_MINUTE=184
KW_MONTH=185 KW_MINUTES=185
KW_MONTHS=186 KW_MONTH=186
KW_MSCK=187 KW_MONTHS=187
KW_NAME=188 KW_MSCK=188
KW_NAMESPACE=189 KW_NAME=189
KW_NAMESPACES=190 KW_NAMESPACE=190
KW_NANOSECOND=191 KW_NAMESPACES=191
KW_NANOSECONDS=192 KW_NANOSECOND=192
KW_NATURAL=193 KW_NANOSECONDS=193
KW_NO=194 KW_NATURAL=194
KW_NOSCAN=195 KW_NO=195
KW_NOT=196 KW_NOSCAN=196
KW_NULL=197 KW_NOT=197
KW_NULLS=198 KW_NULL=198
KW_NUMERIC=199 KW_NULLS=199
KW_OF=200 KW_NUMERIC=200
KW_OFFSET=201 KW_OF=201
KW_ON=202 KW_OFFSET=202
KW_ONLY=203 KW_ON=203
KW_OPTIMIZE=204 KW_ONLY=204
KW_OPTION=205 KW_OPTIMIZE=205
KW_OPTIONS=206 KW_OPTION=206
KW_OR=207 KW_OPTIONS=207
KW_ORDER=208 KW_OR=208
KW_OUT=209 KW_ORDER=209
KW_OUTER=210 KW_OUT=210
KW_OUTPUTFORMAT=211 KW_OUTER=211
KW_OVER=212 KW_OUTPUTFORMAT=212
KW_OVERLAPS=213 KW_OVER=213
KW_OVERLAY=214 KW_OVERLAPS=214
KW_OVERWRITE=215 KW_OVERLAY=215
KW_PARTITION=216 KW_OVERWRITE=216
KW_PARTITIONED=217 KW_PARTITION=217
KW_PARTITIONS=218 KW_PARTITIONED=218
KW_PERCENTILE_CONT=219 KW_PARTITIONS=219
KW_PERCENTILE_DISC=220 KW_PERCENTILE_CONT=220
KW_PERCENTLIT=221 KW_PERCENTILE_DISC=221
KW_PIVOT=222 KW_PERCENTLIT=222
KW_PLACING=223 KW_PIVOT=223
KW_POSITION=224 KW_PLACING=224
KW_PRECEDING=225 KW_POSITION=225
KW_PRIMARY=226 KW_PRECEDING=226
KW_PRINCIPALS=227 KW_PRIMARY=227
KW_PROPERTIES=228 KW_PRINCIPALS=228
KW_PURGE=229 KW_PROPERTIES=229
KW_QUARTER=230 KW_PURGE=230
KW_QUERY=231 KW_QUARTER=231
KW_RANGE=232 KW_QUERY=232
KW_REAL=233 KW_RANGE=233
KW_RECORDREADER=234 KW_REAL=234
KW_RECORDWRITER=235 KW_RECORDREADER=235
KW_RECOVER=236 KW_RECORDWRITER=236
KW_REDUCE=237 KW_RECOVER=237
KW_REFERENCES=238 KW_REDUCE=238
KW_REFRESH=239 KW_REFERENCES=239
KW_RENAME=240 KW_REFRESH=240
KW_REPAIR=241 KW_RENAME=241
KW_REPEATABLE=242 KW_REPAIR=242
KW_REPLACE=243 KW_REPEATABLE=243
KW_RESET=244 KW_REPLACE=244
KW_RESPECT=245 KW_RESET=245
KW_RESTRICT=246 KW_RESPECT=246
KW_REWRITE=247 KW_RESTRICT=247
KW_REVOKE=248 KW_REWRITE=248
KW_RIGHT=249 KW_REVOKE=249
KW_RLIKE=250 KW_RIGHT=250
KW_REGEXP=251 KW_RLIKE=251
KW_ROLE=252 KW_REGEXP=252
KW_ROLES=253 KW_ROLE=253
KW_ROLLBACK=254 KW_ROLES=254
KW_ROLLUP=255 KW_ROLLBACK=255
KW_ROW=256 KW_ROLLUP=256
KW_ROWS=257 KW_ROW=257
KW_SECOND=258 KW_ROWS=258
KW_SECONDS=259 KW_SECOND=259
KW_SCHEMA=260 KW_SECONDS=260
KW_SCHEMAS=261 KW_SCHEMA=261
KW_SELECT=262 KW_SCHEMAS=262
KW_SEMI=263 KW_SELECT=263
KW_SEPARATED=264 KW_SEMI=264
KW_SERDE=265 KW_SEPARATED=265
KW_SERDEPROPERTIES=266 KW_SERDE=266
KW_SESSION_USER=267 KW_SERDEPROPERTIES=267
KW_SET=268 KW_SESSION_USER=268
KW_MINUS=269 KW_SET=269
KW_SETS=270 KW_MINUS=270
KW_SHORT=271 KW_SETS=271
KW_SHOW=272 KW_SHORT=272
KW_SINGLE=273 KW_SHOW=273
KW_SKEWED=274 KW_SINGLE=274
KW_SMALLINT=275 KW_SKEWED=275
KW_SOME=276 KW_SMALLINT=276
KW_SORT=277 KW_SOME=277
KW_SORTED=278 KW_SORT=278
KW_SOURCE=279 KW_SORTED=279
KW_START=280 KW_SOURCE=280
KW_STATISTICS=281 KW_START=281
KW_STORED=282 KW_STATISTICS=282
KW_STRATIFY=283 KW_STORED=283
KW_STRING=284 KW_STRATIFY=284
KW_STRUCT=285 KW_STRING=285
KW_SUBSTR=286 KW_STRUCT=286
KW_SUBSTRING=287 KW_SUBSTR=287
KW_SYNC=288 KW_SUBSTRING=288
KW_SYSTEM=289 KW_SYNC=289
KW_SYSTEM_TIME=290 KW_SYSTEM=290
KW_SYSTEM_VERSION=291 KW_SYSTEM_TIME=291
KW_TABLE=292 KW_SYSTEM_VERSION=292
KW_TABLES=293 KW_TABLE=293
KW_TABLESAMPLE=294 KW_TABLES=294
KW_TARGET=295 KW_TABLESAMPLE=295
KW_TBLPROPERTIES=296 KW_TARGET=296
KW_TEMPORARY=297 KW_TBLPROPERTIES=297
KW_TERMINATED=298 KW_TEMPORARY=298
KW_THEN=299 KW_TERMINATED=299
KW_TIME=300 KW_THEN=300
KW_TIMEDIFF=301 KW_TIME=301
KW_TIMESTAMP=302 KW_TIMEDIFF=302
KW_TIMESTAMP_LTZ=303 KW_TIMESTAMP=303
KW_TIMESTAMP_NTZ=304 KW_TIMESTAMP_LTZ=304
KW_TIMESTAMPADD=305 KW_TIMESTAMP_NTZ=305
KW_TIMESTAMPDIFF=306 KW_TIMESTAMPADD=306
KW_TINYINT=307 KW_TIMESTAMPDIFF=307
KW_TO=308 KW_TINYINT=308
KW_TOUCH=309 KW_TO=309
KW_TRAILING=310 KW_TOUCH=310
KW_TRANSACTION=311 KW_TRAILING=311
KW_TRANSACTIONS=312 KW_TRANSACTION=312
KW_TRANSFORM=313 KW_TRANSACTIONS=313
KW_TRIM=314 KW_TRANSFORM=314
KW_TRUE=315 KW_TRIM=315
KW_TRUNCATE=316 KW_TRUE=316
KW_TRY_CAST=317 KW_TRUNCATE=317
KW_TYPE=318 KW_TRY_CAST=318
KW_UNARCHIVE=319 KW_TYPE=319
KW_UNBOUNDED=320 KW_UNARCHIVE=320
KW_UNCACHE=321 KW_UNBOUNDED=321
KW_UNION=322 KW_UNCACHE=322
KW_UNIQUE=323 KW_UNION=323
KW_UNKNOWN=324 KW_UNIQUE=324
KW_UNLOCK=325 KW_UNKNOWN=325
KW_UNPIVOT=326 KW_UNLOCK=326
KW_UNSET=327 KW_UNPIVOT=327
KW_UPDATE=328 KW_UNSET=328
KW_USE=329 KW_UPDATE=329
KW_USER=330 KW_USE=330
KW_USING=331 KW_USER=331
KW_VALUES=332 KW_USING=332
KW_VARCHAR=333 KW_VALUES=333
KW_VAR=334 KW_VARCHAR=334
KW_VARIABLE=335 KW_VAR=335
KW_VERSION=336 KW_VARIABLE=336
KW_VIEW=337 KW_VERSION=337
KW_VIEWS=338 KW_VIEW=338
KW_VOID=339 KW_VIEWS=339
KW_WEEK=340 KW_VOID=340
KW_WEEKS=341 KW_WEEK=341
KW_WHEN=342 KW_WEEKS=342
KW_WHERE=343 KW_WHEN=343
KW_WINDOW=344 KW_WHERE=344
KW_WITH=345 KW_WINDOW=345
KW_WITHIN=346 KW_WITH=346
KW_YEAR=347 KW_WITHIN=347
KW_YEARS=348 KW_YEAR=348
KW_ZONE=349 KW_YEARS=349
KW_ZORDER=350 KW_ZONE=350
EQ=351 KW_ZORDER=351
NSEQ=352 EQ=352
NEQ=353 NSEQ=353
NEQJ=354 NEQ=354
LT=355 NEQJ=355
LTE=356 LT=356
GT=357 LTE=357
GTE=358 GT=358
NOT=359 GTE=359
PLUS=360 NOT=360
MINUS=361 PLUS=361
ASTERISK=362 MINUS=362
SLASH=363 ASTERISK=363
PERCENT=364 SLASH=364
TILDE=365 PERCENT=365
AMPERSAND=366 TILDE=366
PIPE=367 AMPERSAND=367
CONCAT_PIPE=368 PIPE=368
HAT=369 CONCAT_PIPE=369
COLON=370 HAT=370
ARROW=371 COLON=371
FAT_ARROW=372 ARROW=372
HENT_START=373 FAT_ARROW=373
HENT_END=374 HENT_START=374
QUESTION=375 HENT_END=375
STRING_LITERAL=376 QUESTION=376
DOUBLEQUOTED_STRING=377 STRING_LITERAL=377
BIGINT_LITERAL=378 DOUBLEQUOTED_STRING=378
SMALLINT_LITERAL=379 BIGINT_LITERAL=379
TINYINT_LITERAL=380 SMALLINT_LITERAL=380
INTEGER_VALUE=381 TINYINT_LITERAL=381
EXPONENT_VALUE=382 INTEGER_VALUE=382
DECIMAL_VALUE=383 EXPONENT_VALUE=383
FLOAT_LITERAL=384 DECIMAL_VALUE=384
DOUBLE_LITERAL=385 FLOAT_LITERAL=385
BIGDECIMAL_LITERAL=386 DOUBLE_LITERAL=386
IDENTIFIER=387 BIGDECIMAL_LITERAL=387
BACKQUOTED_IDENTIFIER=388 IDENTIFIER=388
SIMPLE_COMMENT=389 BACKQUOTED_IDENTIFIER=389
BRACKETED_COMMENT=390 SIMPLE_COMMENT=390
WS=391 BRACKETED_COMMENT=391
UNRECOGNIZED=392 WS=392
UNRECOGNIZED=393
';'=1 ';'=1
'('=2 '('=2
')'=3 ')'=3
@ -551,214 +552,215 @@ UNRECOGNIZED=392
'LAZY'=159 'LAZY'=159
'LEADING'=160 'LEADING'=160
'LEFT'=161 'LEFT'=161
'LIKE'=162 'LIFECYCLE'=162
'ILIKE'=163 'LIKE'=163
'LIMIT'=164 'ILIKE'=164
'LINES'=165 'LIMIT'=165
'LIST'=166 'LINES'=166
'LOAD'=167 'LIST'=167
'LOCAL'=168 'LOAD'=168
'LOCATION'=169 'LOCAL'=169
'LOCK'=170 'LOCATION'=170
'LOCKS'=171 'LOCK'=171
'LOGICAL'=172 'LOCKS'=172
'LONG'=173 'LOGICAL'=173
'MACRO'=174 'LONG'=174
'MATERIALIZED'=175 'MACRO'=175
'MAP'=176 'MATERIALIZED'=176
'MATCHED'=177 'MAP'=177
'MERGE'=178 'MATCHED'=178
'MICROSECOND'=179 'MERGE'=179
'MICROSECONDS'=180 'MICROSECOND'=180
'MILLISECOND'=181 'MICROSECONDS'=181
'MILLISECONDS'=182 'MILLISECOND'=182
'MINUTE'=183 'MILLISECONDS'=183
'MINUTES'=184 'MINUTE'=184
'MONTH'=185 'MINUTES'=185
'MONTHS'=186 'MONTH'=186
'MSCK'=187 'MONTHS'=187
'NAME'=188 'MSCK'=188
'NAMESPACE'=189 'NAME'=189
'NAMESPACES'=190 'NAMESPACE'=190
'NANOSECOND'=191 'NAMESPACES'=191
'NANOSECONDS'=192 'NANOSECOND'=192
'NATURAL'=193 'NANOSECONDS'=193
'NO'=194 'NATURAL'=194
'NOSCAN'=195 'NO'=195
'NOT'=196 'NOSCAN'=196
'NULL'=197 'NOT'=197
'NULLS'=198 'NULL'=198
'NUMERIC'=199 'NULLS'=199
'OF'=200 'NUMERIC'=200
'OFFSET'=201 'OF'=201
'ON'=202 'OFFSET'=202
'ONLY'=203 'ON'=203
'OPTIMIZE'=204 'ONLY'=204
'OPTION'=205 'OPTIMIZE'=205
'OPTIONS'=206 'OPTION'=206
'OR'=207 'OPTIONS'=207
'ORDER'=208 'OR'=208
'OUT'=209 'ORDER'=209
'OUTER'=210 'OUT'=210
'OUTPUTFORMAT'=211 'OUTER'=211
'OVER'=212 'OUTPUTFORMAT'=212
'OVERLAPS'=213 'OVER'=213
'OVERLAY'=214 'OVERLAPS'=214
'OVERWRITE'=215 'OVERLAY'=215
'PARTITION'=216 'OVERWRITE'=216
'PARTITIONED'=217 'PARTITION'=217
'PARTITIONS'=218 'PARTITIONED'=218
'PERCENTILE_CONT'=219 'PARTITIONS'=219
'PERCENTILE_DISC'=220 'PERCENTILE_CONT'=220
'PERCENT'=221 'PERCENTILE_DISC'=221
'PIVOT'=222 'PERCENT'=222
'PLACING'=223 'PIVOT'=223
'POSITION'=224 'PLACING'=224
'PRECEDING'=225 'POSITION'=225
'PRIMARY'=226 'PRECEDING'=226
'PRINCIPALS'=227 'PRIMARY'=227
'PROPERTIES'=228 'PRINCIPALS'=228
'PURGE'=229 'PROPERTIES'=229
'QUARTER'=230 'PURGE'=230
'QUERY'=231 'QUARTER'=231
'RANGE'=232 'QUERY'=232
'REAL'=233 'RANGE'=233
'RECORDREADER'=234 'REAL'=234
'RECORDWRITER'=235 'RECORDREADER'=235
'RECOVER'=236 'RECORDWRITER'=236
'REDUCE'=237 'RECOVER'=237
'REFERENCES'=238 'REDUCE'=238
'REFRESH'=239 'REFERENCES'=239
'RENAME'=240 'REFRESH'=240
'REPAIR'=241 'RENAME'=241
'REPEATABLE'=242 'REPAIR'=242
'REPLACE'=243 'REPEATABLE'=243
'RESET'=244 'REPLACE'=244
'RESPECT'=245 'RESET'=245
'RESTRICT'=246 'RESPECT'=246
'REWRITE'=247 'RESTRICT'=247
'REVOKE'=248 'REWRITE'=248
'RIGHT'=249 'REVOKE'=249
'RLIKE'=250 'RIGHT'=250
'REGEXP'=251 'RLIKE'=251
'ROLE'=252 'REGEXP'=252
'ROLES'=253 'ROLE'=253
'ROLLBACK'=254 'ROLES'=254
'ROLLUP'=255 'ROLLBACK'=255
'ROW'=256 'ROLLUP'=256
'ROWS'=257 'ROW'=257
'SECOND'=258 'ROWS'=258
'SECONDS'=259 'SECOND'=259
'SCHEMA'=260 'SECONDS'=260
'SCHEMAS'=261 'SCHEMA'=261
'SELECT'=262 'SCHEMAS'=262
'SEMI'=263 'SELECT'=263
'SEPARATED'=264 'SEMI'=264
'SERDE'=265 'SEPARATED'=265
'SERDEPROPERTIES'=266 'SERDE'=266
'SESSION_USER'=267 'SERDEPROPERTIES'=267
'SET'=268 'SESSION_USER'=268
'MINUS'=269 'SET'=269
'SETS'=270 'MINUS'=270
'SHORT'=271 'SETS'=271
'SHOW'=272 'SHORT'=272
'SINGLE'=273 'SHOW'=273
'SKEWED'=274 'SINGLE'=274
'SMALLINT'=275 'SKEWED'=275
'SOME'=276 'SMALLINT'=276
'SORT'=277 'SOME'=277
'SORTED'=278 'SORT'=278
'SOURCE'=279 'SORTED'=279
'START'=280 'SOURCE'=280
'STATISTICS'=281 'START'=281
'STORED'=282 'STATISTICS'=282
'STRATIFY'=283 'STORED'=283
'STRING'=284 'STRATIFY'=284
'STRUCT'=285 'STRING'=285
'SUBSTR'=286 'STRUCT'=286
'SUBSTRING'=287 'SUBSTR'=287
'SYNC'=288 'SUBSTRING'=288
'SYSTEM'=289 'SYNC'=289
'SYSTEM_TIME'=290 'SYSTEM'=290
'SYSTEM_VERSION'=291 'SYSTEM_TIME'=291
'TABLE'=292 'SYSTEM_VERSION'=292
'TABLES'=293 'TABLE'=293
'TABLESAMPLE'=294 'TABLES'=294
'TARGET'=295 'TABLESAMPLE'=295
'TBLPROPERTIES'=296 'TARGET'=296
'TEMPORARY'=297 'TBLPROPERTIES'=297
'TERMINATED'=298 'TEMPORARY'=298
'THEN'=299 'TERMINATED'=299
'TIME'=300 'THEN'=300
'TIMEDIFF'=301 'TIME'=301
'TIMESTAMP'=302 'TIMEDIFF'=302
'TIMESTAMP_LTZ'=303 'TIMESTAMP'=303
'TIMESTAMP_NTZ'=304 'TIMESTAMP_LTZ'=304
'TIMESTAMPADD'=305 'TIMESTAMP_NTZ'=305
'TIMESTAMPDIFF'=306 'TIMESTAMPADD'=306
'TINYINT'=307 'TIMESTAMPDIFF'=307
'TO'=308 'TINYINT'=308
'TOUCH'=309 'TO'=309
'TRAILING'=310 'TOUCH'=310
'TRANSACTION'=311 'TRAILING'=311
'TRANSACTIONS'=312 'TRANSACTION'=312
'TRANSFORM'=313 'TRANSACTIONS'=313
'TRIM'=314 'TRANSFORM'=314
'TRUE'=315 'TRIM'=315
'TRUNCATE'=316 'TRUE'=316
'TRY_CAST'=317 'TRUNCATE'=317
'TYPE'=318 'TRY_CAST'=318
'UNARCHIVE'=319 'TYPE'=319
'UNBOUNDED'=320 'UNARCHIVE'=320
'UNCACHE'=321 'UNBOUNDED'=321
'UNION'=322 'UNCACHE'=322
'UNIQUE'=323 'UNION'=323
'UNKNOWN'=324 'UNIQUE'=324
'UNLOCK'=325 'UNKNOWN'=325
'UNPIVOT'=326 'UNLOCK'=326
'UNSET'=327 'UNPIVOT'=327
'UPDATE'=328 'UNSET'=328
'USE'=329 'UPDATE'=329
'USER'=330 'USE'=330
'USING'=331 'USER'=331
'VALUES'=332 'USING'=332
'VARCHAR'=333 'VALUES'=333
'VAR'=334 'VARCHAR'=334
'VARIABLE'=335 'VAR'=335
'VERSION'=336 'VARIABLE'=336
'VIEW'=337 'VERSION'=337
'VIEWS'=338 'VIEW'=338
'VOID'=339 'VIEWS'=339
'WEEK'=340 'VOID'=340
'WEEKS'=341 'WEEK'=341
'WHEN'=342 'WEEKS'=342
'WHERE'=343 'WHEN'=343
'WINDOW'=344 'WHERE'=344
'WITH'=345 'WINDOW'=345
'WITHIN'=346 'WITH'=346
'YEAR'=347 'WITHIN'=347
'YEARS'=348 'YEAR'=348
'ZONE'=349 'YEARS'=349
'ZORDER'=350 'ZONE'=350
'<=>'=352 'ZORDER'=351
'<>'=353 '<=>'=353
'!='=354 '<>'=354
'<'=355 '!='=355
'>'=357 '<'=356
'!'=359 '>'=358
'+'=360 '!'=360
'-'=361 '+'=361
'*'=362 '-'=362
'/'=363 '*'=363
'%'=364 '/'=364
'~'=365 '%'=365
'&'=366 '~'=366
'|'=367 '&'=367
'||'=368 '|'=368
'^'=369 '||'=369
':'=370 '^'=370
'->'=371 ':'=371
'=>'=372 '->'=372
'/*+'=373 '=>'=373
'*/'=374 '/*+'=374
'?'=375 '*/'=375
'?'=376

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -159,237 +159,238 @@ KW_LATERAL=158
KW_LAZY=159 KW_LAZY=159
KW_LEADING=160 KW_LEADING=160
KW_LEFT=161 KW_LEFT=161
KW_LIKE=162 KW_LIFECYCLE=162
KW_ILIKE=163 KW_LIKE=163
KW_LIMIT=164 KW_ILIKE=164
KW_LINES=165 KW_LIMIT=165
KW_LIST=166 KW_LINES=166
KW_LOAD=167 KW_LIST=167
KW_LOCAL=168 KW_LOAD=168
KW_LOCATION=169 KW_LOCAL=169
KW_LOCK=170 KW_LOCATION=170
KW_LOCKS=171 KW_LOCK=171
KW_LOGICAL=172 KW_LOCKS=172
KW_LONG=173 KW_LOGICAL=173
KW_MACRO=174 KW_LONG=174
KW_MATERIALIZED=175 KW_MACRO=175
KW_MAP=176 KW_MATERIALIZED=176
KW_MATCHED=177 KW_MAP=177
KW_MERGE=178 KW_MATCHED=178
KW_MICROSECOND=179 KW_MERGE=179
KW_MICROSECONDS=180 KW_MICROSECOND=180
KW_MILLISECOND=181 KW_MICROSECONDS=181
KW_MILLISECONDS=182 KW_MILLISECOND=182
KW_MINUTE=183 KW_MILLISECONDS=183
KW_MINUTES=184 KW_MINUTE=184
KW_MONTH=185 KW_MINUTES=185
KW_MONTHS=186 KW_MONTH=186
KW_MSCK=187 KW_MONTHS=187
KW_NAME=188 KW_MSCK=188
KW_NAMESPACE=189 KW_NAME=189
KW_NAMESPACES=190 KW_NAMESPACE=190
KW_NANOSECOND=191 KW_NAMESPACES=191
KW_NANOSECONDS=192 KW_NANOSECOND=192
KW_NATURAL=193 KW_NANOSECONDS=193
KW_NO=194 KW_NATURAL=194
KW_NOSCAN=195 KW_NO=195
KW_NOT=196 KW_NOSCAN=196
KW_NULL=197 KW_NOT=197
KW_NULLS=198 KW_NULL=198
KW_NUMERIC=199 KW_NULLS=199
KW_OF=200 KW_NUMERIC=200
KW_OFFSET=201 KW_OF=201
KW_ON=202 KW_OFFSET=202
KW_ONLY=203 KW_ON=203
KW_OPTIMIZE=204 KW_ONLY=204
KW_OPTION=205 KW_OPTIMIZE=205
KW_OPTIONS=206 KW_OPTION=206
KW_OR=207 KW_OPTIONS=207
KW_ORDER=208 KW_OR=208
KW_OUT=209 KW_ORDER=209
KW_OUTER=210 KW_OUT=210
KW_OUTPUTFORMAT=211 KW_OUTER=211
KW_OVER=212 KW_OUTPUTFORMAT=212
KW_OVERLAPS=213 KW_OVER=213
KW_OVERLAY=214 KW_OVERLAPS=214
KW_OVERWRITE=215 KW_OVERLAY=215
KW_PARTITION=216 KW_OVERWRITE=216
KW_PARTITIONED=217 KW_PARTITION=217
KW_PARTITIONS=218 KW_PARTITIONED=218
KW_PERCENTILE_CONT=219 KW_PARTITIONS=219
KW_PERCENTILE_DISC=220 KW_PERCENTILE_CONT=220
KW_PERCENTLIT=221 KW_PERCENTILE_DISC=221
KW_PIVOT=222 KW_PERCENTLIT=222
KW_PLACING=223 KW_PIVOT=223
KW_POSITION=224 KW_PLACING=224
KW_PRECEDING=225 KW_POSITION=225
KW_PRIMARY=226 KW_PRECEDING=226
KW_PRINCIPALS=227 KW_PRIMARY=227
KW_PROPERTIES=228 KW_PRINCIPALS=228
KW_PURGE=229 KW_PROPERTIES=229
KW_QUARTER=230 KW_PURGE=230
KW_QUERY=231 KW_QUARTER=231
KW_RANGE=232 KW_QUERY=232
KW_REAL=233 KW_RANGE=233
KW_RECORDREADER=234 KW_REAL=234
KW_RECORDWRITER=235 KW_RECORDREADER=235
KW_RECOVER=236 KW_RECORDWRITER=236
KW_REDUCE=237 KW_RECOVER=237
KW_REFERENCES=238 KW_REDUCE=238
KW_REFRESH=239 KW_REFERENCES=239
KW_RENAME=240 KW_REFRESH=240
KW_REPAIR=241 KW_RENAME=241
KW_REPEATABLE=242 KW_REPAIR=242
KW_REPLACE=243 KW_REPEATABLE=243
KW_RESET=244 KW_REPLACE=244
KW_RESPECT=245 KW_RESET=245
KW_RESTRICT=246 KW_RESPECT=246
KW_REWRITE=247 KW_RESTRICT=247
KW_REVOKE=248 KW_REWRITE=248
KW_RIGHT=249 KW_REVOKE=249
KW_RLIKE=250 KW_RIGHT=250
KW_REGEXP=251 KW_RLIKE=251
KW_ROLE=252 KW_REGEXP=252
KW_ROLES=253 KW_ROLE=253
KW_ROLLBACK=254 KW_ROLES=254
KW_ROLLUP=255 KW_ROLLBACK=255
KW_ROW=256 KW_ROLLUP=256
KW_ROWS=257 KW_ROW=257
KW_SECOND=258 KW_ROWS=258
KW_SECONDS=259 KW_SECOND=259
KW_SCHEMA=260 KW_SECONDS=260
KW_SCHEMAS=261 KW_SCHEMA=261
KW_SELECT=262 KW_SCHEMAS=262
KW_SEMI=263 KW_SELECT=263
KW_SEPARATED=264 KW_SEMI=264
KW_SERDE=265 KW_SEPARATED=265
KW_SERDEPROPERTIES=266 KW_SERDE=266
KW_SESSION_USER=267 KW_SERDEPROPERTIES=267
KW_SET=268 KW_SESSION_USER=268
KW_MINUS=269 KW_SET=269
KW_SETS=270 KW_MINUS=270
KW_SHORT=271 KW_SETS=271
KW_SHOW=272 KW_SHORT=272
KW_SINGLE=273 KW_SHOW=273
KW_SKEWED=274 KW_SINGLE=274
KW_SMALLINT=275 KW_SKEWED=275
KW_SOME=276 KW_SMALLINT=276
KW_SORT=277 KW_SOME=277
KW_SORTED=278 KW_SORT=278
KW_SOURCE=279 KW_SORTED=279
KW_START=280 KW_SOURCE=280
KW_STATISTICS=281 KW_START=281
KW_STORED=282 KW_STATISTICS=282
KW_STRATIFY=283 KW_STORED=283
KW_STRING=284 KW_STRATIFY=284
KW_STRUCT=285 KW_STRING=285
KW_SUBSTR=286 KW_STRUCT=286
KW_SUBSTRING=287 KW_SUBSTR=287
KW_SYNC=288 KW_SUBSTRING=288
KW_SYSTEM=289 KW_SYNC=289
KW_SYSTEM_TIME=290 KW_SYSTEM=290
KW_SYSTEM_VERSION=291 KW_SYSTEM_TIME=291
KW_TABLE=292 KW_SYSTEM_VERSION=292
KW_TABLES=293 KW_TABLE=293
KW_TABLESAMPLE=294 KW_TABLES=294
KW_TARGET=295 KW_TABLESAMPLE=295
KW_TBLPROPERTIES=296 KW_TARGET=296
KW_TEMPORARY=297 KW_TBLPROPERTIES=297
KW_TERMINATED=298 KW_TEMPORARY=298
KW_THEN=299 KW_TERMINATED=299
KW_TIME=300 KW_THEN=300
KW_TIMEDIFF=301 KW_TIME=301
KW_TIMESTAMP=302 KW_TIMEDIFF=302
KW_TIMESTAMP_LTZ=303 KW_TIMESTAMP=303
KW_TIMESTAMP_NTZ=304 KW_TIMESTAMP_LTZ=304
KW_TIMESTAMPADD=305 KW_TIMESTAMP_NTZ=305
KW_TIMESTAMPDIFF=306 KW_TIMESTAMPADD=306
KW_TINYINT=307 KW_TIMESTAMPDIFF=307
KW_TO=308 KW_TINYINT=308
KW_TOUCH=309 KW_TO=309
KW_TRAILING=310 KW_TOUCH=310
KW_TRANSACTION=311 KW_TRAILING=311
KW_TRANSACTIONS=312 KW_TRANSACTION=312
KW_TRANSFORM=313 KW_TRANSACTIONS=313
KW_TRIM=314 KW_TRANSFORM=314
KW_TRUE=315 KW_TRIM=315
KW_TRUNCATE=316 KW_TRUE=316
KW_TRY_CAST=317 KW_TRUNCATE=317
KW_TYPE=318 KW_TRY_CAST=318
KW_UNARCHIVE=319 KW_TYPE=319
KW_UNBOUNDED=320 KW_UNARCHIVE=320
KW_UNCACHE=321 KW_UNBOUNDED=321
KW_UNION=322 KW_UNCACHE=322
KW_UNIQUE=323 KW_UNION=323
KW_UNKNOWN=324 KW_UNIQUE=324
KW_UNLOCK=325 KW_UNKNOWN=325
KW_UNPIVOT=326 KW_UNLOCK=326
KW_UNSET=327 KW_UNPIVOT=327
KW_UPDATE=328 KW_UNSET=328
KW_USE=329 KW_UPDATE=329
KW_USER=330 KW_USE=330
KW_USING=331 KW_USER=331
KW_VALUES=332 KW_USING=332
KW_VARCHAR=333 KW_VALUES=333
KW_VAR=334 KW_VARCHAR=334
KW_VARIABLE=335 KW_VAR=335
KW_VERSION=336 KW_VARIABLE=336
KW_VIEW=337 KW_VERSION=337
KW_VIEWS=338 KW_VIEW=338
KW_VOID=339 KW_VIEWS=339
KW_WEEK=340 KW_VOID=340
KW_WEEKS=341 KW_WEEK=341
KW_WHEN=342 KW_WEEKS=342
KW_WHERE=343 KW_WHEN=343
KW_WINDOW=344 KW_WHERE=344
KW_WITH=345 KW_WINDOW=345
KW_WITHIN=346 KW_WITH=346
KW_YEAR=347 KW_WITHIN=347
KW_YEARS=348 KW_YEAR=348
KW_ZONE=349 KW_YEARS=349
KW_ZORDER=350 KW_ZONE=350
EQ=351 KW_ZORDER=351
NSEQ=352 EQ=352
NEQ=353 NSEQ=353
NEQJ=354 NEQ=354
LT=355 NEQJ=355
LTE=356 LT=356
GT=357 LTE=357
GTE=358 GT=358
NOT=359 GTE=359
PLUS=360 NOT=360
MINUS=361 PLUS=361
ASTERISK=362 MINUS=362
SLASH=363 ASTERISK=363
PERCENT=364 SLASH=364
TILDE=365 PERCENT=365
AMPERSAND=366 TILDE=366
PIPE=367 AMPERSAND=367
CONCAT_PIPE=368 PIPE=368
HAT=369 CONCAT_PIPE=369
COLON=370 HAT=370
ARROW=371 COLON=371
FAT_ARROW=372 ARROW=372
HENT_START=373 FAT_ARROW=373
HENT_END=374 HENT_START=374
QUESTION=375 HENT_END=375
STRING_LITERAL=376 QUESTION=376
DOUBLEQUOTED_STRING=377 STRING_LITERAL=377
BIGINT_LITERAL=378 DOUBLEQUOTED_STRING=378
SMALLINT_LITERAL=379 BIGINT_LITERAL=379
TINYINT_LITERAL=380 SMALLINT_LITERAL=380
INTEGER_VALUE=381 TINYINT_LITERAL=381
EXPONENT_VALUE=382 INTEGER_VALUE=382
DECIMAL_VALUE=383 EXPONENT_VALUE=383
FLOAT_LITERAL=384 DECIMAL_VALUE=384
DOUBLE_LITERAL=385 FLOAT_LITERAL=385
BIGDECIMAL_LITERAL=386 DOUBLE_LITERAL=386
IDENTIFIER=387 BIGDECIMAL_LITERAL=387
BACKQUOTED_IDENTIFIER=388 IDENTIFIER=388
SIMPLE_COMMENT=389 BACKQUOTED_IDENTIFIER=389
BRACKETED_COMMENT=390 SIMPLE_COMMENT=390
WS=391 BRACKETED_COMMENT=391
UNRECOGNIZED=392 WS=392
UNRECOGNIZED=393
';'=1 ';'=1
'('=2 '('=2
')'=3 ')'=3
@ -551,214 +552,215 @@ UNRECOGNIZED=392
'LAZY'=159 'LAZY'=159
'LEADING'=160 'LEADING'=160
'LEFT'=161 'LEFT'=161
'LIKE'=162 'LIFECYCLE'=162
'ILIKE'=163 'LIKE'=163
'LIMIT'=164 'ILIKE'=164
'LINES'=165 'LIMIT'=165
'LIST'=166 'LINES'=166
'LOAD'=167 'LIST'=167
'LOCAL'=168 'LOAD'=168
'LOCATION'=169 'LOCAL'=169
'LOCK'=170 'LOCATION'=170
'LOCKS'=171 'LOCK'=171
'LOGICAL'=172 'LOCKS'=172
'LONG'=173 'LOGICAL'=173
'MACRO'=174 'LONG'=174
'MATERIALIZED'=175 'MACRO'=175
'MAP'=176 'MATERIALIZED'=176
'MATCHED'=177 'MAP'=177
'MERGE'=178 'MATCHED'=178
'MICROSECOND'=179 'MERGE'=179
'MICROSECONDS'=180 'MICROSECOND'=180
'MILLISECOND'=181 'MICROSECONDS'=181
'MILLISECONDS'=182 'MILLISECOND'=182
'MINUTE'=183 'MILLISECONDS'=183
'MINUTES'=184 'MINUTE'=184
'MONTH'=185 'MINUTES'=185
'MONTHS'=186 'MONTH'=186
'MSCK'=187 'MONTHS'=187
'NAME'=188 'MSCK'=188
'NAMESPACE'=189 'NAME'=189
'NAMESPACES'=190 'NAMESPACE'=190
'NANOSECOND'=191 'NAMESPACES'=191
'NANOSECONDS'=192 'NANOSECOND'=192
'NATURAL'=193 'NANOSECONDS'=193
'NO'=194 'NATURAL'=194
'NOSCAN'=195 'NO'=195
'NOT'=196 'NOSCAN'=196
'NULL'=197 'NOT'=197
'NULLS'=198 'NULL'=198
'NUMERIC'=199 'NULLS'=199
'OF'=200 'NUMERIC'=200
'OFFSET'=201 'OF'=201
'ON'=202 'OFFSET'=202
'ONLY'=203 'ON'=203
'OPTIMIZE'=204 'ONLY'=204
'OPTION'=205 'OPTIMIZE'=205
'OPTIONS'=206 'OPTION'=206
'OR'=207 'OPTIONS'=207
'ORDER'=208 'OR'=208
'OUT'=209 'ORDER'=209
'OUTER'=210 'OUT'=210
'OUTPUTFORMAT'=211 'OUTER'=211
'OVER'=212 'OUTPUTFORMAT'=212
'OVERLAPS'=213 'OVER'=213
'OVERLAY'=214 'OVERLAPS'=214
'OVERWRITE'=215 'OVERLAY'=215
'PARTITION'=216 'OVERWRITE'=216
'PARTITIONED'=217 'PARTITION'=217
'PARTITIONS'=218 'PARTITIONED'=218
'PERCENTILE_CONT'=219 'PARTITIONS'=219
'PERCENTILE_DISC'=220 'PERCENTILE_CONT'=220
'PERCENT'=221 'PERCENTILE_DISC'=221
'PIVOT'=222 'PERCENT'=222
'PLACING'=223 'PIVOT'=223
'POSITION'=224 'PLACING'=224
'PRECEDING'=225 'POSITION'=225
'PRIMARY'=226 'PRECEDING'=226
'PRINCIPALS'=227 'PRIMARY'=227
'PROPERTIES'=228 'PRINCIPALS'=228
'PURGE'=229 'PROPERTIES'=229
'QUARTER'=230 'PURGE'=230
'QUERY'=231 'QUARTER'=231
'RANGE'=232 'QUERY'=232
'REAL'=233 'RANGE'=233
'RECORDREADER'=234 'REAL'=234
'RECORDWRITER'=235 'RECORDREADER'=235
'RECOVER'=236 'RECORDWRITER'=236
'REDUCE'=237 'RECOVER'=237
'REFERENCES'=238 'REDUCE'=238
'REFRESH'=239 'REFERENCES'=239
'RENAME'=240 'REFRESH'=240
'REPAIR'=241 'RENAME'=241
'REPEATABLE'=242 'REPAIR'=242
'REPLACE'=243 'REPEATABLE'=243
'RESET'=244 'REPLACE'=244
'RESPECT'=245 'RESET'=245
'RESTRICT'=246 'RESPECT'=246
'REWRITE'=247 'RESTRICT'=247
'REVOKE'=248 'REWRITE'=248
'RIGHT'=249 'REVOKE'=249
'RLIKE'=250 'RIGHT'=250
'REGEXP'=251 'RLIKE'=251
'ROLE'=252 'REGEXP'=252
'ROLES'=253 'ROLE'=253
'ROLLBACK'=254 'ROLES'=254
'ROLLUP'=255 'ROLLBACK'=255
'ROW'=256 'ROLLUP'=256
'ROWS'=257 'ROW'=257
'SECOND'=258 'ROWS'=258
'SECONDS'=259 'SECOND'=259
'SCHEMA'=260 'SECONDS'=260
'SCHEMAS'=261 'SCHEMA'=261
'SELECT'=262 'SCHEMAS'=262
'SEMI'=263 'SELECT'=263
'SEPARATED'=264 'SEMI'=264
'SERDE'=265 'SEPARATED'=265
'SERDEPROPERTIES'=266 'SERDE'=266
'SESSION_USER'=267 'SERDEPROPERTIES'=267
'SET'=268 'SESSION_USER'=268
'MINUS'=269 'SET'=269
'SETS'=270 'MINUS'=270
'SHORT'=271 'SETS'=271
'SHOW'=272 'SHORT'=272
'SINGLE'=273 'SHOW'=273
'SKEWED'=274 'SINGLE'=274
'SMALLINT'=275 'SKEWED'=275
'SOME'=276 'SMALLINT'=276
'SORT'=277 'SOME'=277
'SORTED'=278 'SORT'=278
'SOURCE'=279 'SORTED'=279
'START'=280 'SOURCE'=280
'STATISTICS'=281 'START'=281
'STORED'=282 'STATISTICS'=282
'STRATIFY'=283 'STORED'=283
'STRING'=284 'STRATIFY'=284
'STRUCT'=285 'STRING'=285
'SUBSTR'=286 'STRUCT'=286
'SUBSTRING'=287 'SUBSTR'=287
'SYNC'=288 'SUBSTRING'=288
'SYSTEM'=289 'SYNC'=289
'SYSTEM_TIME'=290 'SYSTEM'=290
'SYSTEM_VERSION'=291 'SYSTEM_TIME'=291
'TABLE'=292 'SYSTEM_VERSION'=292
'TABLES'=293 'TABLE'=293
'TABLESAMPLE'=294 'TABLES'=294
'TARGET'=295 'TABLESAMPLE'=295
'TBLPROPERTIES'=296 'TARGET'=296
'TEMPORARY'=297 'TBLPROPERTIES'=297
'TERMINATED'=298 'TEMPORARY'=298
'THEN'=299 'TERMINATED'=299
'TIME'=300 'THEN'=300
'TIMEDIFF'=301 'TIME'=301
'TIMESTAMP'=302 'TIMEDIFF'=302
'TIMESTAMP_LTZ'=303 'TIMESTAMP'=303
'TIMESTAMP_NTZ'=304 'TIMESTAMP_LTZ'=304
'TIMESTAMPADD'=305 'TIMESTAMP_NTZ'=305
'TIMESTAMPDIFF'=306 'TIMESTAMPADD'=306
'TINYINT'=307 'TIMESTAMPDIFF'=307
'TO'=308 'TINYINT'=308
'TOUCH'=309 'TO'=309
'TRAILING'=310 'TOUCH'=310
'TRANSACTION'=311 'TRAILING'=311
'TRANSACTIONS'=312 'TRANSACTION'=312
'TRANSFORM'=313 'TRANSACTIONS'=313
'TRIM'=314 'TRANSFORM'=314
'TRUE'=315 'TRIM'=315
'TRUNCATE'=316 'TRUE'=316
'TRY_CAST'=317 'TRUNCATE'=317
'TYPE'=318 'TRY_CAST'=318
'UNARCHIVE'=319 'TYPE'=319
'UNBOUNDED'=320 'UNARCHIVE'=320
'UNCACHE'=321 'UNBOUNDED'=321
'UNION'=322 'UNCACHE'=322
'UNIQUE'=323 'UNION'=323
'UNKNOWN'=324 'UNIQUE'=324
'UNLOCK'=325 'UNKNOWN'=325
'UNPIVOT'=326 'UNLOCK'=326
'UNSET'=327 'UNPIVOT'=327
'UPDATE'=328 'UNSET'=328
'USE'=329 'UPDATE'=329
'USER'=330 'USE'=330
'USING'=331 'USER'=331
'VALUES'=332 'USING'=332
'VARCHAR'=333 'VALUES'=333
'VAR'=334 'VARCHAR'=334
'VARIABLE'=335 'VAR'=335
'VERSION'=336 'VARIABLE'=336
'VIEW'=337 'VERSION'=337
'VIEWS'=338 'VIEW'=338
'VOID'=339 'VIEWS'=339
'WEEK'=340 'VOID'=340
'WEEKS'=341 'WEEK'=341
'WHEN'=342 'WEEKS'=342
'WHERE'=343 'WHEN'=343
'WINDOW'=344 'WHERE'=344
'WITH'=345 'WINDOW'=345
'WITHIN'=346 'WITH'=346
'YEAR'=347 'WITHIN'=347
'YEARS'=348 'YEAR'=348
'ZONE'=349 'YEARS'=349
'ZORDER'=350 'ZONE'=350
'<=>'=352 'ZORDER'=351
'<>'=353 '<=>'=353
'!='=354 '<>'=354
'<'=355 '!='=355
'>'=357 '<'=356
'!'=359 '>'=358
'+'=360 '!'=360
'-'=361 '+'=361
'*'=362 '-'=362
'/'=363 '*'=363
'%'=364 '/'=364
'~'=365 '%'=365
'&'=366 '~'=366
'|'=367 '&'=367
'||'=368 '|'=368
'^'=369 '||'=369
':'=370 '^'=370
'->'=371 ':'=371
'=>'=372 '->'=372
'/*+'=373 '=>'=373
'*/'=374 '/*+'=374
'?'=375 '*/'=375
'?'=376

File diff suppressed because it is too large Load Diff

View File

@ -124,6 +124,7 @@ import { CtesContext } from "./SparkSqlParser.js";
import { NamedQueryContext } from "./SparkSqlParser.js"; import { NamedQueryContext } from "./SparkSqlParser.js";
import { TableProviderContext } from "./SparkSqlParser.js"; import { TableProviderContext } from "./SparkSqlParser.js";
import { CreateTableClausesContext } from "./SparkSqlParser.js"; import { CreateTableClausesContext } from "./SparkSqlParser.js";
import { TableLifecycleContext } from "./SparkSqlParser.js";
import { PropertyListContext } from "./SparkSqlParser.js"; import { PropertyListContext } from "./SparkSqlParser.js";
import { PropertyContext } from "./SparkSqlParser.js"; import { PropertyContext } from "./SparkSqlParser.js";
import { PropertyKeyContext } from "./SparkSqlParser.js"; import { PropertyKeyContext } from "./SparkSqlParser.js";
@ -1652,6 +1653,16 @@ export class SparkSqlParserListener implements ParseTreeListener {
* @param ctx the parse tree * @param ctx the parse tree
*/ */
exitCreateTableClauses?: (ctx: CreateTableClausesContext) => void; exitCreateTableClauses?: (ctx: CreateTableClausesContext) => void;
/**
* Enter a parse tree produced by `SparkSqlParser.tableLifecycle`.
* @param ctx the parse tree
*/
enterTableLifecycle?: (ctx: TableLifecycleContext) => void;
/**
* Exit a parse tree produced by `SparkSqlParser.tableLifecycle`.
* @param ctx the parse tree
*/
exitTableLifecycle?: (ctx: TableLifecycleContext) => void;
/** /**
* Enter a parse tree produced by `SparkSqlParser.propertyList`. * Enter a parse tree produced by `SparkSqlParser.propertyList`.
* @param ctx the parse tree * @param ctx the parse tree

View File

@ -124,6 +124,7 @@ import { CtesContext } from "./SparkSqlParser.js";
import { NamedQueryContext } from "./SparkSqlParser.js"; import { NamedQueryContext } from "./SparkSqlParser.js";
import { TableProviderContext } from "./SparkSqlParser.js"; import { TableProviderContext } from "./SparkSqlParser.js";
import { CreateTableClausesContext } from "./SparkSqlParser.js"; import { CreateTableClausesContext } from "./SparkSqlParser.js";
import { TableLifecycleContext } from "./SparkSqlParser.js";
import { PropertyListContext } from "./SparkSqlParser.js"; import { PropertyListContext } from "./SparkSqlParser.js";
import { PropertyContext } from "./SparkSqlParser.js"; import { PropertyContext } from "./SparkSqlParser.js";
import { PropertyKeyContext } from "./SparkSqlParser.js"; import { PropertyKeyContext } from "./SparkSqlParser.js";
@ -1099,6 +1100,12 @@ export class SparkSqlParserVisitor<Result> extends AbstractParseTreeVisitor<Resu
* @return the visitor result * @return the visitor result
*/ */
visitCreateTableClauses?: (ctx: CreateTableClausesContext) => Result; visitCreateTableClauses?: (ctx: CreateTableClausesContext) => Result;
/**
* Visit a parse tree produced by `SparkSqlParser.tableLifecycle`.
* @param ctx the parse tree
* @return the visitor result
*/
visitTableLifecycle?: (ctx: TableLifecycleContext) => Result;
/** /**
* Visit a parse tree produced by `SparkSqlParser.propertyList`. * Visit a parse tree produced by `SparkSqlParser.propertyList`.
* @param ctx the parse tree * @param ctx the parse tree

View File

@ -105,3 +105,16 @@ CREATE MANAGED TABLE managed_table (
) COMMENT '测试分桶' CLUSTERED BY(id) SORTED BY (id) INTO 4 BUCKETS STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'; ) COMMENT '测试分桶' CLUSTERED BY(id) SORTED BY (id) INTO 4 BUCKETS STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler';
CREATE TABLE list_bucket_multiple (col1 STRING, col2 INT, col3 STRING) SKEWED BY (col1, col2) ON (('s1', 1), ('s3', 3), ('s13', 13), ('s78', 78)) STORED AS JSONFILE; CREATE TABLE list_bucket_multiple (col1 STRING, col2 INT, col3 STRING) SKEWED BY (col1, col2) ON (('s1', 1), ('s3', 3), ('s13', 13), ('s78', 78)) STORED AS JSONFILE;
-- dtstack SparkSQL/HiveSQL lifecycle
CREATE TABLE IF NOT EXISTS t1 (
id INT COMMENT '索引',
name STRING COMMENT '姓名',
age SMALLINT COMMENT '年龄'
) COMMENT "t1表" lifecycle 29;
-- dtstack SparkSQL/HiveSQL lifecycle
CREATE MANAGED TABLE managed_table (
id INT COMMENT 'ID',
name STRING COMMENT '名称'
) COMMENT '测试分桶' lifecycle 29 CLUSTERED BY(id) SORTED BY (id) INTO 4 BUCKETS STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler';

View File

@ -66,3 +66,10 @@ CREATE TABLE student_bucket
) )
SELECT * FROM tmpTable SELECT * FROM tmpTable
); );
-- dtstack SparkSQL/HiveSQL lifecycle
CREATE TABLE IF NOT EXISTS t1 (
id INT COMMENT '索引',
name STRING COMMENT '姓名',
age SMALLINT COMMENT '年龄'
) COMMENT "t1表" lifecycle 29;

View File

@ -22,3 +22,11 @@ CREATE TABLE Student_Duple like Student
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE STORED AS TEXTFILE
TBLPROPERTIES ('owner'='xxxx'); TBLPROPERTIES ('owner'='xxxx');
-- dtstack SparkSQL/HiveSQL lifecycle
CREATE TABLE Student_Duple like Student
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE
TBLPROPERTIES ('owner'='xxxx') lifecycle 29;