浏览代码

HUE-8856 [autocomplete] Extract jison for generic SELECT

Johan Ahlen 6 年之前
父节点
当前提交
94469d720a

+ 0 - 35
desktop/core/src/desktop/js/parse/jison/generic/sql_alter.jison

@@ -39,26 +39,9 @@ AlterStatement_EDIT
  ;
 
 AlterDatabase
- : 'ALTER' DatabaseOrSchema RegularOrBacktickedIdentifier 'SET' HdfsLocation
-    {
-      parser.addDatabaseLocation(@3, [ { name: $3 } ]);
-    }
  ;
 
 AlterDatabase_EDIT
- : 'ALTER' DatabaseOrSchema 'CURSOR'
- | 'ALTER' DatabaseOrSchema RegularOrBacktickedIdentifier 'CURSOR'
-   {
-     parser.addDatabaseLocation(@3, [ { name: $3 } ]);
-   }
- | 'ALTER' DatabaseOrSchema RegularOrBacktickedIdentifier 'SET' 'CURSOR'
-    {
-      parser.addDatabaseLocation(@3, [ { name: $3 } ]);
-    }
- | 'ALTER' DatabaseOrSchema RegularOrBacktickedIdentifier 'SET' HdfsLocation_EDIT
-   {
-     parser.addDatabaseLocation(@3, [ { name: $3 } ]);
-   }
  ;
 
 AlterTable
@@ -78,24 +61,6 @@ AlterTable_EDIT
  | AlterTableLeftSide PartitionSpec OptionalPartitionOperations_EDIT
  ;
 
-OptionalPartitionOperations
- : 'SET' HdfsLocation
- | 'SET' CachedIn OptionalWithReplication
- ;
-
-OptionalPartitionOperations_EDIT
- : 'SET' HdfsLocation_EDIT
- | 'SET' CachedIn_EDIT
- | 'SET' CachedIn OptionalWithReplication 'CURSOR'
-   {
-     if (!$3) {
-       parser.suggestKeywords(['WITH REPLICATION =']);
-     }
-   }
- | 'SET' CachedIn WithReplication_EDIT
- | 'SET' 'ROW' 'CURSOR'
- ;
-
 AlterTableLeftSide
  : 'ALTER' 'TABLE' SchemaQualifiedTableIdentifier
    {

+ 0 - 2
desktop/core/src/desktop/js/parse/jison/generic/sql_create.jison

@@ -94,7 +94,6 @@ DatabaseDefinitionOptionals
 
 DatabaseDefinitionOptionals_EDIT
  : OptionalComment_INVALID OptionalHdfsLocation
- | OptionalComment HdfsLocation_EDIT
  ;
 
 OptionalComment
@@ -139,7 +138,6 @@ TableDefinitionRightPart
 TableDefinitionRightPart_EDIT
  : TableIdentifierAndOptionalColumnSpecification_EDIT OptionalPartitionedBy OptionalHdfsLocation OptionalAsSelectStatement
  | TableIdentifierAndOptionalColumnSpecification PartitionedBy_EDIT OptionalHdfsLocation OptionalAsSelectStatement
- | TableIdentifierAndOptionalColumnSpecification OptionalPartitionedBy HdfsLocation_EDIT OptionalAsSelectStatement
  | TableIdentifierAndOptionalColumnSpecification OptionalPartitionedBy OptionalHdfsLocation OptionalAsSelectStatement_EDIT
  | TableIdentifierAndOptionalColumnSpecification OptionalPartitionedBy OptionalHdfsLocation 'CURSOR'
    {

+ 3 - 55
desktop/core/src/desktop/js/parse/jison/generic/sql_error.jison

@@ -22,13 +22,7 @@ SqlStatements
 SqlStatement_EDIT
  : AnyCursor error
    {
-     if (parser.isHive()) {
-       parser.suggestDdlAndDmlKeywords(['EXPLAIN', 'FROM']);
-     } else if (parser.isImpala()) {
-       parser.suggestDdlAndDmlKeywords(['EXPLAIN']);
-     } else {
-       parser.suggestDdlAndDmlKeywords();
-     }
+     parser.suggestDdlAndDmlKeywords();
    }
  ;
 
@@ -80,13 +74,6 @@ ErrorList
  | Errors ',' error
  ;
 
-LateralView
- : '<hive>LATERAL' '<hive>VIEW' OptionalOuter ArbitraryFunction RegularOrBacktickedIdentifier '<hive>AS' error  -> { }
- | '<hive>LATERAL' '<hive>VIEW' OptionalOuter ArbitraryFunction error                                           -> { }
- | '<hive>LATERAL' '<hive>VIEW' OptionalOuter error                                                               -> { }
- | '<hive>LATERAL' error                                                                                          -> { }
- ;
-
 JoinType_EDIT
  : 'FULL' 'CURSOR' error
    {
@@ -94,21 +81,11 @@ JoinType_EDIT
    }
  | 'LEFT' 'CURSOR' error
    {
-     if (parser.isHive()) {
-       parser.suggestKeywords(['JOIN', 'OUTER JOIN', 'SEMI JOIN']);
-     } else if (parser.isImpala()) {
-       parser.suggestKeywords(['ANTI JOIN', 'INNER JOIN', 'JOIN', 'OUTER JOIN', 'SEMI JOIN']);
-     } else {
-       parser.suggestKeywords(['JOIN', 'OUTER JOIN']);
-     }
+     parser.suggestKeywords(['JOIN', 'OUTER JOIN']);
    }
  | 'RIGHT' 'CURSOR' error
    {
-     if (parser.isImpala()) {
-       parser.suggestKeywords(['ANTI JOIN', 'INNER JOIN', 'JOIN', 'OUTER JOIN', 'SEMI JOIN']);
-     } else {
-       parser.suggestKeywords(['JOIN', 'OUTER JOIN']);
-     }
+     parser.suggestKeywords(['JOIN', 'OUTER JOIN']);
    }
  ;
 
@@ -127,13 +104,6 @@ OptionalSelectConditions_EDIT
        cursorAtEnd: !$6 && !$7 && !$8 && !$9 && !$10
      }
    }
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause WindowClause error 'CURSOR' OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
-   {
-     $$ = {
-       suggestKeywords: parser.getKeywordsForOptionalsLR([$7, $8, $9, $10], [{ value: 'ORDER BY', weight: 5 }, [{ value: 'CLUSTER BY', weight: 4 }, { value: 'DISTRIBUTE BY', weight: 4 }, { value: 'SORT BY', weight: 4 }], { value: 'LIMIT', weight: 3 }, { value: 'OFFSET', weight: 2 }], [true, parser.isHive(), true, parser.isImpala()]),
-       cursorAtEnd: !$7 && !$8 && !$9 && !$10
-     }
-   }
  | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OrderByClause error 'CURSOR' OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
    {
      $$ = {
@@ -141,13 +111,6 @@ OptionalSelectConditions_EDIT
        cursorAtEnd: !$8 && !$9 && !$10
      }
    }
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OptionalOrderByClause ClusterOrDistributeBy error 'CURSOR' OptionalLimitClause OptionalOffsetClause
-   {
-     $$ = {
-       suggestKeywords: parser.getKeywordsForOptionalsLR([$9, $10], [{ value: 'LIMIT', weight: 3 }, { value: 'OFFSET', weight: 2 }], [true, parser.isImpala()]),
-       cursorAtEnd: !$9 && !$10
-     }
-   }
  | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy LimitClause error 'CURSOR' OptionalOffsetClause
    {
      $$ = {
@@ -160,29 +123,14 @@ OptionalSelectConditions_EDIT
 OptionalSelectConditions_EDIT
  : WhereClause error GroupByClause_EDIT OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
  | WhereClause error OptionalGroupByClause HavingClause_EDIT OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | WhereClause error OptionalGroupByClause OptionalHavingClause WindowClause_EDIT OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
  | WhereClause error OptionalGroupByClause OptionalHavingClause OptionalWindowClause OrderByClause_EDIT OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | WhereClause error OptionalGroupByClause OptionalHavingClause OptionalWindowClause OptionalOrderByClause ClusterOrDistributeBy_EDIT OptionalLimitClause OptionalOffsetClause
  | WhereClause error OptionalGroupByClause OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy LimitClause_EDIT OptionalOffsetClause
- | WhereClause error OptionalGroupByClause OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OffsetClause_EDIT
  | OptionalWhereClause GroupByClause error HavingClause_EDIT OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | OptionalWhereClause GroupByClause error OptionalHavingClause WindowClause_EDIT OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
  | OptionalWhereClause GroupByClause error OptionalHavingClause OptionalWindowClause OrderByClause_EDIT OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | OptionalWhereClause GroupByClause error OptionalHavingClause OptionalWindowClause OptionalOrderByClause ClusterOrDistributeBy_EDIT OptionalLimitClause OptionalOffsetClause
  | OptionalWhereClause GroupByClause error OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy LimitClause_EDIT OptionalOffsetClause
- | OptionalWhereClause GroupByClause error OptionalHavingClause OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OffsetClause_EDIT
- | OptionalWhereClause OptionalGroupByClause HavingClause error WindowClause_EDIT OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
  | OptionalWhereClause OptionalGroupByClause HavingClause error OptionalWindowClause OrderByClause_EDIT OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause HavingClause error OptionalWindowClause OptionalOrderByClause ClusterOrDistributeBy_EDIT OptionalLimitClause OptionalOffsetClause
  | OptionalWhereClause OptionalGroupByClause HavingClause error OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy LimitClause_EDIT OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause HavingClause error OptionalWindowClause OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OffsetClause_EDIT
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause WindowClause error OrderByClause_EDIT OptionalClusterOrDistributeBy OptionalLimitClause OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause WindowClause error OptionalOrderByClause ClusterOrDistributeBy_EDIT OptionalLimitClause OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause WindowClause error OptionalOrderByClause OptionalClusterOrDistributeBy LimitClause_EDIT OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause WindowClause error OptionalOrderByClause OptionalClusterOrDistributeBy OptionalLimitClause OffsetClause_EDIT
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OrderByClause error ClusterOrDistributeBy_EDIT OptionalLimitClause OptionalOffsetClause
  | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OrderByClause error OptionalClusterOrDistributeBy LimitClause_EDIT OptionalOffsetClause
- | OptionalWhereClause OptionalGroupByClause OptionalHavingClause OptionalWindowClause OrderByClause error OptionalClusterOrDistributeBy OptionalLimitClause OffsetClause_EDIT
  ;
 
 DatabaseDefinition_EDIT

+ 0 - 1
desktop/core/src/desktop/js/parse/jison/generic/sql_load.jison

@@ -135,7 +135,6 @@ ImportStatement_EDIT
    }
  | '<hive>IMPORT' TableWithPartition_EDIT
  | '<hive>IMPORT' OptionalTableWithPartition PushHdfsLexerState 'FROM' HdfsPath_EDIT OptionalHdfsLocation
- | '<hive>IMPORT' OptionalTableWithPartition PushHdfsLexerState 'FROM' HdfsPath HdfsLocation_EDIT
  | '<hive>IMPORT' OptionalTableWithPartition PushHdfsLexerState 'FROM' HdfsPath OptionalHdfsLocation 'CURSOR'
    {
      if (!$6) {

文件差异内容过多而无法显示
+ 10 - 833
desktop/core/src/desktop/js/parse/jison/generic/sql_main.jison


+ 2 - 2
desktop/core/src/desktop/js/parse/jison/generic/sql_set.jison

@@ -40,7 +40,7 @@ SetSpecification
 
 SetOption
  : RegularIdentifier
- | SetOption AnyDot RegularIdentifier
+ | SetOption '.' RegularIdentifier
  ;
 
 SetValue
@@ -64,4 +64,4 @@ SetRoleStatement_EDIT
    {
      parser.suggestKeywords(['ALL', 'NONE']);
    }
- ;
+ ;

+ 12 - 143
desktop/core/src/desktop/js/parse/jison/generic/sql_show.jison

@@ -39,7 +39,6 @@ ShowStatement
  | ShowRoleStatement
  | ShowRolesStatement
  | ShowTableStatement
- | ShowTablesStatement
  | ShowTblPropertiesStatement
  | ShowTransactionsStatement
  | ShowViewsStatement
@@ -95,7 +94,6 @@ ShowStatement_EDIT
  | ShowPartitionsStatement_EDIT
  | ShowRoleStatement_EDIT
  | ShowTableStatement_EDIT
- | ShowTablesStatement_EDIT
  | ShowTblPropertiesStatement_EDIT
  | ShowViewsStatement_EDIT
  ;
@@ -123,8 +121,8 @@ ShowColumnStatsStatement_EDIT
  ;
 
 ShowColumnsStatement
- : AnyShow '<hive>COLUMNS' AnyFromOrIn RegularOrBacktickedIdentifier
- | AnyShow '<hive>COLUMNS' AnyFromOrIn RegularOrBacktickedIdentifier AnyFromOrIn RegularOrBacktickedIdentifier
+ : AnyShow '<hive>COLUMNS' FromOrIn RegularOrBacktickedIdentifier
+ | AnyShow '<hive>COLUMNS' FromOrIn RegularOrBacktickedIdentifier FromOrIn RegularOrBacktickedIdentifier
  ;
 
 ShowColumnsStatement_EDIT
@@ -136,27 +134,27 @@ ShowColumnsStatement_EDIT
    {
      parser.suggestKeywords(['FROM', 'IN']);
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn 'CURSOR'
+ | AnyShow '<hive>COLUMNS' FromOrIn 'CURSOR'
    {
      parser.suggestTables();
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn 'CURSOR' AnyFromOrIn
+ | AnyShow '<hive>COLUMNS' FromOrIn 'CURSOR' FromOrIn
    {
      parser.suggestTables();
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn 'CURSOR' AnyFromOrIn RegularOrBacktickedIdentifier
+ | AnyShow '<hive>COLUMNS' FromOrIn 'CURSOR' FromOrIn RegularOrBacktickedIdentifier
    {
      parser.suggestTables();
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn RegularOrBacktickedIdentifier 'CURSOR'
+ | AnyShow '<hive>COLUMNS' FromOrIn RegularOrBacktickedIdentifier 'CURSOR'
    {
      parser.suggestKeywords(['FROM', 'IN']);
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn RegularOrBacktickedIdentifier 'CURSOR' RegularOrBacktickedIdentifier
+ | AnyShow '<hive>COLUMNS' FromOrIn RegularOrBacktickedIdentifier 'CURSOR' RegularOrBacktickedIdentifier
    {
      parser.suggestKeywords(['FROM', 'IN']);
    }
- | AnyShow '<hive>COLUMNS' AnyFromOrIn RegularOrBacktickedIdentifier AnyFromOrIn 'CURSOR'
+ | AnyShow '<hive>COLUMNS' FromOrIn RegularOrBacktickedIdentifier FromOrIn 'CURSOR'
    {
      parser.suggestDatabases();
    }
@@ -171,47 +169,9 @@ ShowConfStatement
  ;
 
 ShowCreateTableStatement
- : AnyShow HiveOrImpalaCreate AnyTableOrView RegularOrBackTickedSchemaQualifiedName
-   {
-     parser.addTablePrimary($4);
-   }
  ;
 
 ShowCreateTableStatement_EDIT
- : AnyShow HiveOrImpalaCreate 'CURSOR'
-   {
-     if (parser.isImpala()) {
-       parser.suggestKeywords(['TABLE', 'VIEW']);
-     } else {
-       parser.suggestKeywords(['TABLE']);
-     }
-   }
- | AnyShow HiveOrImpalaCreate AnyTableOrView 'CURSOR'
-   {
-     if ($3.isView && parser.isImpala()) {
-       parser.suggestTables({ onlyViews: true });
-     } else {
-       parser.suggestTables();
-     }
-     parser.suggestDatabases({
-       appendDot: true
-     });
-   }
- | AnyShow HiveOrImpalaCreate AnyTableOrView RegularOrBackTickedSchemaQualifiedName_EDIT
-   {
-     if (parser.yy.result.suggestTables && $3.isView) {
-       parser.yy.result.suggestTables.onlyViews = true;
-     }
-   }
- | AnyShow HiveOrImpalaCreate 'CURSOR' RegularOrBackTickedSchemaQualifiedName
-   {
-     parser.addTablePrimary($4);
-     if (parser.isImpala()) {
-       parser.suggestKeywords(['TABLE', 'VIEW']);
-     } else {
-       parser.suggestKeywords(['TABLE']);
-     }
-   }
  ;
 
 AnyTableOrView
@@ -240,15 +200,9 @@ ShowCurrentRolesStatement_EDIT
  ;
 
 ShowDatabasesStatement
- : AnyShow HiveOrImpalaDatabasesOrSchemas 'LIKE' SingleQuotedValue
- | AnyShow '<impala>DATABASES' SingleQuotedValue
  ;
 
 ShowDatabasesStatement_EDIT
- : AnyShow HiveOrImpalaDatabasesOrSchemas 'CURSOR'
-   {
-     parser.suggestKeywords(['LIKE']);
-   }
  ;
 
 ShowFilesStatement
@@ -294,10 +248,6 @@ ShowFunctionsStatement
  ;
 
 ShowFunctionsStatement_EDIT
- : AnyShow AggregateOrAnalytic 'CURSOR'
-   {
-     parser.suggestKeywords(['FUNCTIONS']);
-   }
  | AnyShow 'CURSOR' '<impala>FUNCTIONS' OptionalInDatabase
    {
      parser.suggestKeywords(['AGGREGATE', 'ANALYTICAL']);
@@ -310,10 +260,6 @@ ShowFunctionsStatement_EDIT
        parser.suggestKeywords(['LIKE']);
      }
    }
- | AnyShow AggregateOrAnalytic 'CURSOR' OptionalInDatabase 'LIKE' QuotedValue
-   {
-     parser.suggestKeywords(['FUNCTIONS']);
-   }
  | AnyShow 'CURSOR' '<impala>FUNCTIONS' OptionalInDatabase 'LIKE' QuotedValue
    {
      parser.suggestKeywords(['AGGREGATE', 'ANALYTICAL']);
@@ -333,14 +279,6 @@ ShowGrantStatement
  | AnyShow '<hive>GRANT' OptionalPrincipalName 'ON' '<hive>ALL'
  | AnyShow '<hive>GRANT' OptionalPrincipalName 'ON' SchemaQualifiedTableIdentifier
  | AnyShow '<hive>GRANT' OptionalPrincipalName 'ON' 'TABLE' SchemaQualifiedTableIdentifier
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' 'DATABASE' RegularOrBacktickedIdentifier
-   {
-     parser.addDatabaseLocation(@7, [ { name: $7 } ]);
-   }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>SERVER'
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>TABLE' SchemaQualifiedTableIdentifier
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>URI' RegularOrBacktickedIdentifier
  ;
 
 ShowGrantStatement_EDIT
@@ -368,28 +306,6 @@ ShowGrantStatement_EDIT
    {
      parser.suggestKeywords(['ROLE', 'USER']);
    }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser 'CURSOR'
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'CURSOR'
-   {
-     parser.suggestKeywords(['ON DATABASE', 'ON SERVER', 'ON TABLE', 'ON URI']);
-   }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' 'CURSOR'
-   {
-     parser.suggestKeywords(['DATABASE', 'SERVER', 'TABLE', 'URI']);
-   }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' 'DATABASE' 'CURSOR'
-   {
-     parser.suggestDatabases();
-   }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>TABLE' 'CURSOR'
-   {
-     parser.suggestDatabases({
-       appendDot: true
-     });
-     parser.suggestTables();
-   }
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>TABLE' SchemaQualifiedTableIdentifier_EDIT
- | AnyShow '<impala>GRANT' ImpalaRoleOrUser RegularOrBacktickedIdentifier 'ON' '<impala>URI' 'CURSOR'
  ;
 
 OptionalPrincipalName
@@ -404,14 +320,14 @@ OptionalPrincipalName_EDIT
 
 ShowIndexStatement
  : AnyShow OptionallyFormattedIndex 'ON' RegularOrBacktickedIdentifier
- | AnyShow OptionallyFormattedIndex 'ON' RegularOrBacktickedIdentifier AnyFromOrIn RegularOrBacktickedIdentifier
+ | AnyShow OptionallyFormattedIndex 'ON' RegularOrBacktickedIdentifier FromOrIn RegularOrBacktickedIdentifier
  ;
 
 ShowIndexStatement_EDIT
  : AnyShow OptionallyFormattedIndex
  | AnyShow OptionallyFormattedIndex_EDIT
  | AnyShow OptionallyFormattedIndex_EDIT 'ON' RegularOrBacktickedIdentifier
- | AnyShow OptionallyFormattedIndex_EDIT 'ON' RegularOrBacktickedIdentifier AnyFromOrIn RegularOrBacktickedIdentifier
+ | AnyShow OptionallyFormattedIndex_EDIT 'ON' RegularOrBacktickedIdentifier FromOrIn RegularOrBacktickedIdentifier
  | AnyShow OptionallyFormattedIndex 'CURSOR'
    {
      parser.suggestKeywords(['ON']);
@@ -432,11 +348,11 @@ ShowIndexStatement_EDIT
    {
      parser.suggestKeywords(['FROM', 'IN']);
    }
- | AnyShow OptionallyFormattedIndex 'ON' RegularOrBacktickedIdentifier AnyFromOrIn 'CURSOR'
+ | AnyShow OptionallyFormattedIndex 'ON' RegularOrBacktickedIdentifier FromOrIn 'CURSOR'
    {
      parser.suggestDatabases();
    }
- | AnyShow OptionallyFormattedIndex 'ON' 'CURSOR' AnyFromOrIn RegularOrBacktickedIdentifier
+ | AnyShow OptionallyFormattedIndex 'ON' 'CURSOR' FromOrIn RegularOrBacktickedIdentifier
    {
      parser.suggestTables({identifierChain: [{name: $6}]});
    }
@@ -544,39 +460,9 @@ ShowPartitionsStatement_EDIT
  ;
 
 ShowRoleStatement
- : AnyShow '<hive>ROLE' '<hive>GRANT' HiveRoleOrUser RegularIdentifier
- | AnyShow '<impala>ROLE' '<impala>GRANT' '<impala>GROUP' RegularIdentifier
  ;
 
 ShowRoleStatement_EDIT
- : AnyShow '<hive>ROLE' 'CURSOR'
-   {
-     parser.suggestKeywords(['GRANT']);
-   }
- | AnyShow '<impala>ROLE' 'CURSOR'
-   {
-     parser.suggestKeywords(['GRANT']);
-   }
- | AnyShow '<hive>ROLE' 'CURSOR' HiveRoleOrUser RegularIdentifier
-   {
-     parser.suggestKeywords(['GRANT']);
-   }
- | AnyShow '<hive>ROLE' '<hive>GRANT' 'CURSOR'
-   {
-     parser.suggestKeywords(['ROLE', 'USER']);
-   }
- | AnyShow '<hive>ROLE' '<hive>GRANT' 'CURSOR' RegularIdentifier
-   {
-     parser.suggestKeywords(['ROLE', 'USER']);
-   }
- | AnyShow '<impala>ROLE' '<impala>GRANT' 'CURSOR'
-   {
-     parser.suggestKeywords(['GROUP']);
-   }
- | AnyShow '<impala>ROLE' '<impala>GRANT' 'CURSOR' RegularIdentifier
-   {
-     parser.suggestKeywords(['GROUP']);
-   }
  ;
 
 ShowRolesStatement
@@ -650,23 +536,6 @@ ShowTableStatement_EDIT
  | AnyShow '<impala>TABLE' '<impala>STATS' RegularOrBackTickedSchemaQualifiedName_EDIT
  ;
 
-ShowTablesStatement
- : AnyShow HiveOrImpalaTables OptionalInDatabase
- | AnyShow HiveOrImpalaTables OptionalInDatabase SingleQuotedValue
- | AnyShow HiveOrImpalaTables OptionalInDatabase 'LIKE' SingleQuotedValue
- ;
-
-ShowTablesStatement_EDIT
- : AnyShow HiveOrImpalaTables OptionalInDatabase 'CURSOR'
-   {
-     if (!$3) {
-       parser.suggestKeywords(['IN', 'LIKE']);
-     } else {
-       parser.suggestKeywords(['LIKE']);
-     }
-   }
- ;
-
 ShowTblPropertiesStatement
  : AnyShow '<hive>TBLPROPERTIES' RegularOrBackTickedSchemaQualifiedName
    {

部分文件因为文件数量过多而无法显示