You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by jh...@apache.org on 2017/04/25 03:53:43 UTC
[2/3] calcite git commit: [CALCITE-1759] Add SQL:2014 reserved words
to parser
[CALCITE-1759] Add SQL:2014 reserved words to parser
Between SQL:2011 and SQL:2014, the following keywords were added:
ARRAY_MAX_CARDINALITY, BEGIN_FRAME, BEGIN_PARTITION, CLASSIFIER,
CURRENT_ROW, DEFINE, EMPTY, END_FRAME, END_PARTITION, FRAME_ROW, GROUPS,
INITIAL, MATCHES, MATCH_NUMBER, MATCH_RECOGNIZE, OMIT, ONE, PATTERN,
PER, PERCENT, PERIOD, PORTION, RUNNING, SEEK, SHOW, SKIP, SUBSET,
SYSTEM_TIME, VALUE_OF. All of these are now reserved in Calcite; some of
them were reserved already.
SQL:2014 removed: DAYS, FOREVER, HOURS, KEEP, MAX_CARDINALITY, MINUTES,
SECONDS. None of these were ever reserved in Calcite.
The following became reserved in SQL:2011, and are now reserved in
Calcite: LAG, LEAG, LIKE_REGEX, NTH_VALUE, NTILE, OCCURRENCES_REGEX,
POSITION_REGEX, SUBSTRING_REGEX, TRANSLATE_REGEX, TRIM_ARRAY, TRUNCATE,
VERSIONING.
Sort the reserved word list in the parser.
Project: http://git-wip-us.apache.org/repos/asf/calcite/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/d97c14c5
Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/d97c14c5
Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/d97c14c5
Branch: refs/heads/master
Commit: d97c14c5dd62ed55da4d771e585973213affcb6e
Parents: aed5bca
Author: Hongbin Ma <ma...@apache.org>
Authored: Sun Apr 16 22:14:17 2017 +0800
Committer: Julian Hyde <jh...@apache.org>
Committed: Mon Apr 24 18:23:24 2017 -0700
----------------------------------------------------------------------
core/src/main/codegen/templates/Parser.jj | 78 +-
.../calcite/sql/parser/SqlParserTest.java | 904 ++++++++++---------
.../apache/calcite/sql/test/SqlAdvisorTest.java | 4 +
.../java/org/apache/calcite/test/JdbcTest.java | 2 +-
.../calcite/test/SqlToRelConverterTest.java | 2 +-
.../apache/calcite/test/SqlValidatorTest.java | 18 +-
.../calcite/test/SqlToRelConverterTest.xml | 2 +-
.../apache/calcite/adapter/file/SqlTest.java | 2 +-
site/_docs/reference.md | 45 +-
9 files changed, 588 insertions(+), 469 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/calcite/blob/d97c14c5/core/src/main/codegen/templates/Parser.jj
----------------------------------------------------------------------
diff --git a/core/src/main/codegen/templates/Parser.jj b/core/src/main/codegen/templates/Parser.jj
index 9b04cb5..64d5936 100644
--- a/core/src/main/codegen/templates/Parser.jj
+++ b/core/src/main/codegen/templates/Parser.jj
@@ -855,7 +855,7 @@ void Arg0(List list, ExprContext exprContext) :
name = SimpleIdentifier() <NAMED_ARGUMENT_ASSIGNMENT>
]
(
- <DEFAULT_KW> {
+ <DEFAULT_> {
e = SqlStdOperatorTable.DEFAULT.createCall(getPos());
}
|
@@ -883,7 +883,7 @@ void Arg(List list, ExprContext exprContext) :
name = SimpleIdentifier() <NAMED_ARGUMENT_ASSIGNMENT>
]
(
- <DEFAULT_KW> {
+ <DEFAULT_> {
e = SqlStdOperatorTable.DEFAULT.createCall(getPos());
}
|
@@ -5132,6 +5132,8 @@ SqlIdentifier ReservedFunctionName() :
| <FUSION>
| <GROUPING>
| <HOUR>
+ | <LAG>
+ | <LEAD>
| <LAST_VALUE>
| <LN>
| <LOCALTIME>
@@ -5142,6 +5144,7 @@ SqlIdentifier ReservedFunctionName() :
| <MINUTE>
| <MOD>
| <MONTH>
+ | <NTILE>
| <NULLIF>
| <OCTET_LENGTH>
| <PERCENT_RANK>
@@ -5156,6 +5159,7 @@ SqlIdentifier ReservedFunctionName() :
| <STDDEV_SAMP>
| <SUM>
| <UPPER>
+ | <TRUNCATE>
| <USER>
| <VAR_POP>
| <VAR_SAMP>
@@ -5238,6 +5242,9 @@ SqlNode JdbcFunctionCall() :
// INSERT is a reserved word, but we need to handle {fn insert}
<INSERT> { name = unquotedIdentifier(); }
|
+ // TRUNCATE is a reserved word, but we need to handle {fn truncate}
+ <TRUNCATE> { name = unquotedIdentifier(); }
+ |
// For cases like {fn power(1,2)} and {fn lower('a')}
id = ReservedFunctionName() { name = id.getSimple(); }
|
@@ -5448,12 +5455,14 @@ SqlPostfixOperator PostfixRowOperator() :
| < ALL: "ALL" >
| < ALLOCATE: "ALLOCATE" >
| < ALLOW: "ALLOW" >
- | < ALWAYS: "ALWAYS" >
| < ALTER: "ALTER" >
+ | < ALWAYS: "ALWAYS" >
| < AND: "AND" >
| < ANY: "ANY" >
+ | < APPLY: "APPLY" >
| < ARE: "ARE" >
| < ARRAY: "ARRAY" >
+ | < ARRAY_MAX_CARDINALITY: "ARRAY_MAX_CARDINALITY" >
| < AS: "AS" >
| < ASC: "ASC" >
| < ASENSITIVE: "ASENSITIVE" >
@@ -5468,6 +5477,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < AVG: "AVG" >
| < BEFORE: "BEFORE" >
| < BEGIN: "BEGIN" >
+ | < BEGIN_FRAME: "BEGIN_FRAME" >
+ | < BEGIN_PARTITION: "BEGIN_PARTITION" >
| < BERNOULLI: "BERNOULLI" >
| < BETWEEN: "BETWEEN" >
| < BIGINT: "BIGINT" >
@@ -5502,6 +5513,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < CHARACTERISTICS: "CHARACTERISTICS" >
| < CHARACTERS: "CHARACTERS" >
| < CHECK: "CHECK" >
+ | < CLASSIFIER: "CLASSIFIER" >
| < CLASS_ORIGIN: "CLASS_ORIGIN" >
| < CLOB: "CLOB" >
| < CLOSE: "CLOSE" >
@@ -5531,8 +5543,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < CONSTRAINTS: "CONSTRAINTS" >
| < CONSTRUCTOR: "CONSTRUCTOR" >
| < CONTAINS: "CONTAINS" >
- | < CONVERT: "CONVERT" >
| < CONTINUE: "CONTINUE" >
+ | < CONVERT: "CONVERT" >
| < CORR: "CORR" >
| < CORRESPONDING: "CORRESPONDING" >
| < COUNT: "COUNT" >
@@ -5548,6 +5560,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < CURRENT_DEFAULT_TRANSFORM_GROUP: "CURRENT_DEFAULT_TRANSFORM_GROUP" >
| < CURRENT_PATH: "CURRENT_PATH" >
| < CURRENT_ROLE: "CURRENT_ROLE" >
+ | < CURRENT_ROW: "CURRENT_ROW" >
| < CURRENT_SCHEMA: "CURRENT_SCHEMA" >
| < CURRENT_TIME: "CURRENT_TIME" >
| < CURRENT_TIMESTAMP: "CURRENT_TIMESTAMP" >
@@ -5567,7 +5580,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < DECADE: "DECADE" >
| < DECIMAL: "DECIMAL" >
| < DECLARE: "DECLARE" >
- | < DEFAULT_KW: "DEFAULT" >
+ | < DEFAULT_: "DEFAULT" >
| < DEFAULTS: "DEFAULTS" >
| < DEFERRABLE: "DEFERRABLE" >
| < DEFERRED: "DEFERRED" >
@@ -5580,8 +5593,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < DEPTH: "DEPTH" >
| < DEREF: "DEREF" >
| < DERIVED: "DERIVED" >
- | < DESCRIBE: "DESCRIBE" >
| < DESC: "DESC" >
+ | < DESCRIBE: "DESCRIBE" >
| < DESCRIPTION: "DESCRIPTION" >
| < DESCRIPTOR: "DESCRIPTOR" >
| < DETERMINISTIC: "DETERMINISTIC" >
@@ -5601,8 +5614,11 @@ SqlPostfixOperator PostfixRowOperator() :
| < EACH: "EACH" >
| < ELEMENT: "ELEMENT" >
| < ELSE: "ELSE" >
+ | < EMPTY: "EMPTY" >
| < END: "END" >
| < END_EXEC: "END-EXEC" >
+ | < END_FRAME: "END_FRAME" >
+ | < END_PARTITION: "END_PARTITION" >
| < EPOCH: "EPOCH" >
| < EQUALS: "EQUALS" >
| < ESCAPE: "ESCAPE" >
@@ -5616,8 +5632,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < EXISTS: "EXISTS" >
| < EXP: "EXP" >
| < EXPLAIN: "EXPLAIN" >
- | < EXTERNAL: "EXTERNAL" >
| < EXTEND: "EXTEND" >
+ | < EXTERNAL: "EXTERNAL" >
| < EXTRACT: "EXTRACT" >
| < FALSE: "FALSE" >
| < FETCH: "FETCH" >
@@ -5633,6 +5649,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < FORTRAN: "FORTRAN" >
| < FOUND: "FOUND" >
| < FRAC_SECOND: "FRAC_SECOND" >
+ | < FRAME_ROW: "FRAME_ROW" >
| < FREE: "FREE" >
| < FROM: "FROM" >
| < FULL: "FULL" >
@@ -5649,6 +5666,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < GRANTED: "GRANTED" >
| < GROUP: "GROUP" >
| < GROUPING: "GROUPING" >
+ | < GROUPS: "GROUPS" >
| < HAVING: "HAVING" >
| < HIERARCHY: "HIERARCHY" >
| < HOLD: "HOLD" >
@@ -5658,9 +5676,10 @@ SqlPostfixOperator PostfixRowOperator() :
| < IMPLEMENTATION: "IMPLEMENTATION" >
| < IMPORT: "IMPORT" >
| < IN: "IN" >
- | < INDICATOR: "INDICATOR" >
| < INCLUDING: "INCLUDING" >
| < INCREMENT: "INCREMENT" >
+ | < INDICATOR: "INDICATOR" >
+ | < INITIAL: "INITIAL" >
| < INITIALLY: "INITIALLY" >
| < INNER: "INNER" >
| < INOUT: "INOUT" >
@@ -5686,17 +5705,20 @@ SqlPostfixOperator PostfixRowOperator() :
| < KEY_MEMBER: "KEY_MEMBER" >
| < KEY_TYPE: "KEY_TYPE" >
| < LABEL: "LABEL" >
+ | < LAG: "LAG" >
| < LANGUAGE: "LANGUAGE" >
| < LARGE: "LARGE" >
| < LAST: "LAST" >
| < LAST_VALUE: "LAST_VALUE" >
| < LATERAL: "LATERAL" >
+ | < LEAD: "LEAD" >
| < LEADING: "LEADING" >
| < LEFT: "LEFT" >
| < LENGTH: "LENGTH" >
| < LEVEL: "LEVEL" >
| < LIBRARY: "LIBRARY" >
| < LIKE: "LIKE" >
+ | < LIKE_REGEX: "LIKE_REGEX" >
| < LIMIT: "LIMIT" >
| < LN: "LN" >
| < LOCAL: "LOCAL" >
@@ -5708,6 +5730,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < MAP: "MAP" >
| < MATCH: "MATCH" >
| < MATCHED: "MATCHED" >
+ | < MATCHES: "MATCHES" >
+ | < MATCH_NUMBER: "MATCH_NUMBER">
| < MATCH_RECOGNIZE: "MATCH_RECOGNIZE">
| < MAX: "MAX" >
| < MAXVALUE: "MAXVALUE" >
@@ -5727,7 +5751,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < MODIFIES: "MODIFIES" >
| < MODULE: "MODULE" >
| < MONTH: "MONTH" >
- | < MORE_KW: "MORE" >
+ | < MORE_: "MORE" >
| < MULTISET: "MULTISET" >
| < MUMPS: "MUMPS" >
| < NAME: "NAME" >
@@ -5744,6 +5768,8 @@ SqlPostfixOperator PostfixRowOperator() :
| < NORMALIZE: "NORMALIZE" >
| < NORMALIZED: "NORMALIZED" >
| < NOT: "NOT" >
+ | < NTH_VALUE: "NTH_VALUE" >
+ | < NTILE: "NTILE" >
| < NULL: "NULL" >
| < NULLABLE: "NULLABLE" >
| < NULLIF: "NULLIF" >
@@ -5751,12 +5777,15 @@ SqlPostfixOperator PostfixRowOperator() :
| < NUMBER: "NUMBER" >
| < NUMERIC: "NUMERIC" >
| < OBJECT: "OBJECT" >
+ | < OCCURRENCES_REGEX: "OCCURRENCES_REGEX" >
| < OCTET_LENGTH: "OCTET_LENGTH" >
| < OCTETS: "OCTETS" >
| < OF: "OF" >
| < OFFSET: "OFFSET" >
| < OLD: "OLD" >
+ | < OMIT: "OMIT" >
| < ON: "ON" >
+ | < ONE: "ONE" >
| < ONLY: "ONLY" >
| < OPEN: "OPEN" >
| < OPTION: "OPTION" >
@@ -5787,15 +5816,21 @@ SqlPostfixOperator PostfixRowOperator() :
| < PASSTHROUGH: "PASSTHROUGH" >
| < PATH: "PATH" >
| < PATTERN: "PATTERN" >
- | < PERMUTE: "PERMUTE" >
- | < PERCENT_RANK: "PERCENT_RANK" >
+ | < PER: "PER" >
+ | < PERCENT: "PERCENT" >
| < PERCENTILE_CONT: "PERCENTILE_CONT" >
| < PERCENTILE_DISC: "PERCENTILE_DISC" >
+ | < PERCENT_RANK: "PERCENT_RANK" >
+ | < PERIOD: "PERIOD" >
+ | < PERMUTE: "PERMUTE" >
| < PLACING: "PLACING" >
| < PLAN: "PLAN" >
| < PLI: "PLI" >
+ | < PORTION: "PORTION" >
| < POSITION: "POSITION" >
+ | < POSITION_REGEX: "POSITION_REGEX" >
| < POWER: "POWER" >
+ | < PRECEDES: "PRECEDES" >
| < PRECEDING: "PRECEDING" >
| < PRECISION: "PRECISION" >
| < PREPARE: "PREPARE" >
@@ -5866,6 +5901,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < SECOND: "SECOND" >
| < SECTION: "SECTION" >
| < SECURITY: "SECURITY" >
+ | < SEEK: "SEEK" >
| < SELECT: "SELECT" >
| < SELF: "SELF" >
| < SENSITIVE: "SENSITIVE" >
@@ -5878,9 +5914,11 @@ SqlPostfixOperator PostfixRowOperator() :
| < SET: "SET" >
| < SETS: "SETS" >
| < SET_MINUS: "MINUS">
+ | < SHOW: "SHOW" >
| < SIMILAR: "SIMILAR" >
| < SIMPLE: "SIMPLE" >
| < SIZE: "SIZE" >
+ | < SKIP_: "SKIP" >
| < SMALLINT: "SMALLINT" >
| < SOME: "SOME" >
| < SOURCE: "SOURCE" >
@@ -5953,11 +5991,15 @@ SqlPostfixOperator PostfixRowOperator() :
| < STYLE: "STYLE" >
| < SUBCLASS_ORIGIN: "SUBCLASS_ORIGIN" >
| < SUBMULTISET: "SUBMULTISET" >
- | < SUBSTRING: "SUBSTRING" >
+ | < SUBSET: "SUBSET" >
| < SUBSTITUTE: "SUBSTITUTE" >
+ | < SUBSTRING: "SUBSTRING" >
+ | < SUBSTRING_REGEX: "SUBSTRING_REGEX" >
+ | < SUCCEEDS: "SUCCEEDS" >
| < SUM: "SUM" >
| < SYMMETRIC: "SYMMETRIC" >
| < SYSTEM: "SYSTEM" >
+ | < SYSTEM_TIME: "SYSTEM_TIME" >
| < SYSTEM_USER: "SYSTEM_USER" >
| < TABLE: "TABLE" >
| < TABLE_NAME: "TABLE_NAME" >
@@ -5982,6 +6024,7 @@ SqlPostfixOperator PostfixRowOperator() :
| < TRANSFORM: "TRANSFORM" >
| < TRANSFORMS: "TRANSFORMS" >
| < TRANSLATE: "TRANSLATE" >
+ | < TRANSLATE_REGEX: "TRANSLATE_REGEX" >
| < TRANSLATION: "TRANSLATION" >
| < TREAT: "TREAT" >
| < TRIGGER: "TRIGGER" >
@@ -5989,7 +6032,9 @@ SqlPostfixOperator PostfixRowOperator() :
| < TRIGGER_NAME: "TRIGGER_NAME" >
| < TRIGGER_SCHEMA: "TRIGGER_SCHEMA" >
| < TRIM: "TRIM" >
+ | < TRIM_ARRAY: "TRIM_ARRAY" >
| < TRUE: "TRUE" >
+ | < TRUNCATE: "TRUNCATE" >
| < TYPE: "TYPE" >
| < UESCAPE: "UESCAPE" >
| < UNBOUNDED: "UNBOUNDED" >
@@ -6012,12 +6057,14 @@ SqlPostfixOperator PostfixRowOperator() :
| < USING: "USING" >
| < VALUE: "VALUE" >
| < VALUES: "VALUES" >
+ | < VALUE_OF: "VALUE_OF" >
| < VAR_POP: "VAR_POP" >
| < VAR_SAMP: "VAR_SAMP" >
- | < VARCHAR: "VARCHAR" >
| < VARBINARY: "VARBINARY" >
+ | < VARCHAR: "VARCHAR" >
| < VARYING: "VARYING" >
| < VERSION: "VERSION" >
+ | < VERSIONING: "VERSIONING" >
| < VIEW: "VIEW" >
| < WEEK: "WEEK" >
| < WHEN: "WHEN" >
@@ -6034,7 +6081,6 @@ SqlPostfixOperator PostfixRowOperator() :
| < XML: "XML" >
| < YEAR: "YEAR" >
| < ZONE: "ZONE" >
- | < APPLY: "APPLY" >
<#-- additional parser keywords are included here -->
<#list parser.keywords as keyword>
| < ${keyword}: "${keyword}" >
@@ -6113,7 +6159,6 @@ String CommonNonReservedKeyWord() :
| <CONSTRAINT_SCHEMA>
| <CONSTRAINTS>
| <CONSTRUCTOR>
- | <CONTAINS>
| <CONTINUE>
| <CURSOR_NAME>
| <DATA>
@@ -6140,7 +6185,6 @@ String CommonNonReservedKeyWord() :
| <DYNAMIC_FUNCTION>
| <DYNAMIC_FUNCTION_CODE>
| <EPOCH>
- | <EQUALS>
| <EXCEPTION>
| <EXCLUDE>
| <EXCLUDING>
@@ -6189,7 +6233,7 @@ String CommonNonReservedKeyWord() :
| <MESSAGE_TEXT>
| <MILLENNIUM>
| <MINVALUE>
- | <MORE_KW>
+ | <MORE_>
| <MUMPS>
| <NAME>
| <NAMES>
http://git-wip-us.apache.org/repos/asf/calcite/blob/d97c14c5/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java b/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java
index e743622..37c6c3a 100644
--- a/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java
+++ b/core/src/test/java/org/apache/calcite/sql/parser/SqlParserTest.java
@@ -80,442 +80,471 @@ public class SqlParserTest {
* List of reserved keywords.
*
* <p>Each keyword is followed by tokens indicating whether it is reserved in
- * the SQL:92, SQL:99, SQL:2003 standards and in Calcite.
+ * the SQL:92, SQL:99, SQL:2003, SQL:2011, SQL:2014 standards and in Calcite.
*
* <p>The standard keywords are derived from
- * <a href="http://developer.mimer.com/validator/sql-reserved-words.tml">Mimer</a>.
+ * <a href="http://developer.mimer.com/validator/sql-reserved-words.tml">Mimer</a>
+ * and from the specification.
*
* <p>If a new <b>reserved</b> keyword is added to the parser, include it in
* this list, flagged "c". If the keyword is not intended to be a reserved
* keyword, add it to the non-reserved keyword list in the parser.
*/
private static final List<String> RESERVED_KEYWORDS = ImmutableList.of(
- "ABS", "2011", "c",
- "ABSOLUTE", "92", "99",
- "ACTION", "92", "99",
- "ADD", "92", "99", "2003",
- "AFTER", "99",
- "ALL", "92", "99", "2003", "2011", "c",
- "ALLOCATE", "92", "99", "2003", "2011", "c",
- "ALLOW", "c",
- "ALTER", "92", "99", "2003", "2011", "c",
- "AND", "92", "99", "2003", "2011", "c",
- "ANY", "92", "99", "2003", "2011", "c",
- "ARE", "92", "99", "2003", "2011", "c",
- "ARRAY", "99", "2003", "2011", "c",
- "ARRAY_AGG", "2011",
- "AS", "92", "99", "2003", "2011", "c",
- "ASC", "92", "99",
- "ASENSITIVE", "99", "2003", "2011", "c",
- "ASSERTION", "92", "99",
- "ASYMMETRIC", "99", "2003", "2011", "c",
- "AT", "92", "99", "2003", "2011", "c",
- "ATOMIC", "99", "2003", "2011", "c",
- "AUTHORIZATION", "92", "99", "2003", "2011", "c",
- "AVG", "92", "2011", "c",
- "BEFORE", "99",
- "BEGIN", "92", "99", "2003", "2011", "c",
- "BETWEEN", "92", "99", "2003", "2011", "c",
- "BIGINT", "2003", "2011", "c",
- "BINARY", "99", "2003", "2011", "c",
- "BIT", "92", "99", "c",
- "BIT_LENGTH", "92",
- "BLOB", "99", "2003", "2011", "c",
- "BOOLEAN", "99", "2003", "2011", "c",
- "BOTH", "92", "99", "2003", "2011", "c",
- "BREADTH", "99",
- "BY", "92", "99", "2003", "2011", "c",
- "CALL", "92", "99", "2003", "2011", "c",
- "CALLED", "2003", "2011", "c",
- "CARDINALITY", "2011", "c",
- "CASCADE", "92", "99",
- "CASCADED", "92", "99", "2003", "2011", "c",
- "CASE", "92", "99", "2003", "2011", "c",
- "CAST", "92", "99", "2003", "2011", "c",
- "CATALOG", "92", "99",
- "CEIL", "2011", "c",
- "CEILING", "2011", "c",
- "CHAR", "92", "99", "2003", "2011", "c",
- "CHARACTER", "92", "99", "2003", "2011", "c",
- "CHARACTER_LENGTH", "92", "2011", "c",
- "CHAR_LENGTH", "92", "2011", "c",
- "CHECK", "92", "99", "2003", "2011", "c",
- "CLOB", "99", "2003", "2011", "c",
- "CLOSE", "92", "99", "2003", "2011", "c",
- "COALESCE", "92", "2011", "c",
- "COLLATE", "92", "99", "2003", "2011", "c",
- "COLLATION", "92", "99",
- "COLLECT", "2011", "c",
- "COLUMN", "92", "99", "2003", "2011", "c",
- "COMMIT", "92", "99", "2003", "2011", "c",
- "CONDITION", "92", "99", "2003", "2011", "c",
- "CONNECT", "92", "99", "2003", "2011", "c",
- "CONNECTION", "92", "99",
- "CONSTRAINT", "92", "99", "2003", "2011", "c",
- "CONSTRAINTS", "92", "99",
- "CONSTRUCTOR", "99",
- "CONTAINS", "92",
- "CONTINUE", "92", "99", "2003",
- "CONVERT", "92", "2011", "c",
- "CORR", "2011", "c",
- "CORRESPONDING", "92", "99", "2003", "2011", "c",
- "COUNT", "92", "2011", "c",
- "COVAR_POP", "2011", "c",
- "COVAR_SAMP", "2011", "c",
- "CREATE", "92", "99", "2003", "2011", "c",
- "CROSS", "92", "99", "2003", "2011", "c",
- "CUBE", "99", "2003", "2011", "c",
- "CUME_DIST", "2011", "c",
- "CURRENT", "92", "99", "2003", "2011", "c",
- "CURRENT_CATALOG", "2011", "c",
- "CURRENT_DATE", "92", "99", "2003", "2011", "c",
- "CURRENT_DEFAULT_TRANSFORM_GROUP", "99", "2003", "2011", "c",
- "CURRENT_PATH", "92", "99", "2003", "2011", "c",
- "CURRENT_ROLE", "99", "2003", "2011", "c",
- "CURRENT_SCHEMA", "2011", "c",
- "CURRENT_TIME", "92", "99", "2003", "2011", "c",
- "CURRENT_TIMESTAMP", "92", "99", "2003", "2011", "c",
- "CURRENT_TRANSFORM_GROUP_FOR_TYPE", "99", "2003", "2011", "c",
- "CURRENT_USER", "92", "99", "2003", "2011", "c",
- "CURSOR", "92", "99", "2003", "2011", "c",
- "CYCLE", "99", "2003", "2011", "c",
- "DATA", "99",
- "DATE", "92", "99", "2003", "2011", "c",
- "DAY", "92", "99", "2003", "2011", "c",
- "DAYS", "2011",
- "DEALLOCATE", "92", "99", "2003", "2011", "c",
- "DEC", "92", "99", "2003", "2011", "c",
- "DECIMAL", "92", "99", "2003", "2011", "c",
- "DECLARE", "92", "99", "2003", "2011", "c",
- "DEFAULT", "92", "99", "2003", "2011", "c",
- "DEFERRABLE", "92", "99",
- "DEFERRED", "92", "99",
- "DEFINE", "c",
- "DELETE", "92", "99", "2003", "2011", "c",
- "DENSE_RANK", "2011", "c",
- "DEPTH", "99",
- "DEREF", "99", "2003", "2011", "c",
- "DESC", "92", "99",
- "DESCRIBE", "92", "99", "2003", "2011", "c",
- "DESCRIPTOR", "92", "99",
- "DETERMINISTIC", "92", "99", "2003", "2011", "c",
- "DIAGNOSTICS", "92", "99",
- "DISALLOW", "c",
- "DISCONNECT", "92", "99", "2003", "2011", "c",
- "DISTINCT", "92", "99", "2003", "2011", "c",
- "DO", "92", "99", "2003",
- "DOMAIN", "92", "99",
- "DOUBLE", "92", "99", "2003", "2011", "c",
- "DROP", "92", "99", "2003", "2011", "c",
- "DYNAMIC", "99", "2003", "2011", "c",
- "EACH", "99", "2003", "2011", "c",
- "ELEMENT", "2003", "2011", "c",
- "ELSE", "92", "99", "2003", "2011", "c",
- "ELSEIF", "92", "99", "2003",
- "END", "92", "99", "2003", "2011", "c",
- "END-EXEC", "2011", "c",
- "EQUALS", "99",
- "ESCAPE", "92", "99", "2003", "2011", "c",
- "EVERY", "2011", "c",
- "EXCEPT", "92", "99", "2003", "2011", "c",
- "EXCEPTION", "92", "99",
- "EXEC", "92", "99", "2003", "2011", "c",
- "EXECUTE", "92", "99", "2003", "2011", "c",
- "EXISTS", "92", "99", "2003", "2011", "c",
- "EXIT", "92", "99", "2003",
- "EXP", "2011", "c",
- "EXPLAIN", "c",
- "EXTEND", "c",
- "EXTERNAL", "92", "99", "2003", "2011", "c",
- "EXTRACT", "92", "2011", "c",
- "FALSE", "92", "99", "2003", "2011", "c",
- "FETCH", "92", "99", "2003", "2011", "c",
- "FILTER", "99", "2003", "2011", "c",
- "FIRST", "92", "99",
- "FIRST_VALUE", "2011", "c",
- "FLOAT", "92", "99", "2003", "2011", "c",
- "FLOOR", "2011", "c",
- "FOR", "92", "99", "2003", "2011", "c",
- "FOREIGN", "92", "99", "2003", "2011", "c",
- "FOREVER", "2011",
- "FOUND", "92", "99",
- "FREE", "99", "2003", "2011", "c",
- "FROM", "92", "99", "2003", "2011", "c",
- "FULL", "92", "99", "2003", "2011", "c",
- "FUNCTION", "92", "99", "2003", "2011", "c",
- "FUSION", "2011", "c",
- "GENERAL", "99",
- "GET", "92", "99", "2003", "2011", "c",
- "GLOBAL", "92", "99", "2003", "2011", "c",
- "GO", "92", "99",
- "GOTO", "92", "99",
- "GRANT", "92", "99", "2003", "2011", "c",
- "GROUP", "92", "99", "2003", "2011", "c",
- "GROUPING", "99", "2003", "2011", "c",
- "HANDLER", "92", "99", "2003",
- "HAVING", "92", "99", "2003", "2011", "c",
- "HOLD", "99", "2003", "2011", "c",
- "HOUR", "92", "99", "2003", "2011", "c",
- "HOURS", "2011",
- "IDENTITY", "92", "99", "2003", "2011", "c",
- "IF", "92", "99", "2003",
- "IMMEDIATE", "92", "99", "2003",
- "IMPORT", "c",
- "IN", "92", "99", "2003", "2011", "c",
- "INDICATOR", "92", "99", "2003", "2011", "c",
- "INITIALLY", "92", "99",
- "INNER", "92", "99", "2003", "2011", "c",
- "INOUT", "92", "99", "2003", "2011", "c",
- "INPUT", "92", "99", "2003",
- "INSENSITIVE", "92", "99", "2003", "2011", "c",
- "INSERT", "92", "99", "2003", "2011", "c",
- "INT", "92", "99", "2003", "2011", "c",
- "INTEGER", "92", "99", "2003", "2011", "c",
- "INTERSECT", "92", "99", "2003", "2011", "c",
- "INTERSECTION", "2011", "c",
- "INTERVAL", "92", "99", "2003", "2011", "c",
- "INTO", "92", "99", "2003", "2011", "c",
- "IS", "92", "99", "2003", "2011", "c",
- "ISOLATION", "92", "99",
- "ITERATE", "99", "2003",
- "JOIN", "92", "99", "2003", "2011", "c",
- "KEEP", "2011",
- "KEY", "92", "99",
- "LAG", "2011",
- "LANGUAGE", "92", "99", "2003", "2011", "c",
- "LARGE", "99", "2003", "2011", "c",
- "LAST", "92", "99",
- "LAST_VALUE", "2011", "c",
- "LATERAL", "99", "2003", "2011", "c",
- "LEAD", "2011",
- "LEADING", "92", "99", "2003", "2011", "c",
- "LEAVE", "92", "99", "2003",
- "LEFT", "92", "99", "2003", "2011", "c",
- "LEVEL", "92", "99",
- "LIKE", "92", "99", "2003", "2011", "c",
- "LIKE_REGEX", "2011",
- "LIMIT", "c",
- "LN", "2011", "c",
- "LOCAL", "92", "99", "2003", "2011", "c",
- "LOCALTIME", "99", "2003", "2011", "c",
- "LOCALTIMESTAMP", "99", "2003", "2011", "c",
- "LOCATOR", "99",
- "LOOP", "92", "99", "2003",
- "LOWER", "92", "2011", "c",
- "MAP", "99",
- "MATCH", "92", "99", "2003", "2011", "c",
- "MATCH_RECOGNIZE", "c",
- "MAX", "92", "2011", "c",
- "MAX_CARDINALITY", "2011",
- "MEASURES", "c",
- "MEMBER", "2003", "2011", "c",
- "MERGE", "2003", "2011", "c",
- "METHOD", "99", "2003", "2011", "c",
- "MIN", "92", "2011", "c",
- "MINUS", "c",
- "MINUTE", "92", "99", "2003", "2011", "c",
- "MINUTES", "2011",
- "MOD", "2011", "c",
- "MODIFIES", "99", "2003", "2011", "c",
- "MODULE", "92", "99", "2003", "2011", "c",
- "MONTH", "92", "99", "2003", "2011", "c",
- "MULTISET", "2003", "2011", "c",
- "NAMES", "92", "99",
- "NATIONAL", "92", "99", "2003", "2011", "c",
- "NATURAL", "92", "99", "2003", "2011", "c",
- "NCHAR", "92", "99", "2003", "2011", "c",
- "NCLOB", "99", "2003", "2011", "c",
- "NEW", "99", "2003", "2011", "c",
- "NEXT", "92", "99", "c",
- "NO", "92", "99", "2003", "2011", "c",
- "NONE", "99", "2003", "2011", "c",
- "NORMALIZE", "2011", "c",
- "NOT", "92", "99", "2003", "2011", "c",
- "NTH_VALUE", "2011",
- "NTILE", "2011",
- "NULL", "92", "99", "2003", "2011", "c",
- "NULLIF", "92", "2011", "c",
- "NUMERIC", "92", "99", "2003", "2011", "c",
- "OBJECT", "99",
- "OCCURRENCES_REGEX", "2011",
- "OCTET_LENGTH", "92", "2011", "c",
- "OF", "92", "99", "2003", "2011", "c",
- "OFFSET", "2011", "c",
- "OLD", "99", "2003", "2011", "c",
- "ON", "92", "99", "2003", "2011", "c",
- "ONLY", "92", "99", "2003", "2011", "c",
- "OPEN", "92", "99", "2003", "2011", "c",
- "OPTION", "92", "99",
- "OR", "92", "99", "2003", "2011", "c",
- "ORDER", "92", "99", "2003", "2011", "c",
- "ORDINALITY", "99",
- "OUT", "92", "99", "2003", "2011", "c",
- "OUTER", "92", "99", "2003", "2011", "c",
- "OUTPUT", "92", "99", "2003",
- "OVER", "99", "2003", "2011", "c",
- "OVERLAPS", "92", "99", "2003", "2011", "c",
- "OVERLAY", "2011", "c",
- "PAD", "92", "99",
- "PARAMETER", "92", "99", "2003", "2011", "c",
- "PARTIAL", "92", "99",
- "PARTITION", "99", "2003", "2011", "c",
- "PATH", "92", "99",
- "PATTERN", "c",
- "PERCENTILE_CONT", "2011", "c",
- "PERCENTILE_DISC", "2011", "c",
- "PERCENT_RANK", "2011", "c",
- "PERMUTE", "c",
- "POSITION", "92", "2011", "c",
- "POSITION_REGEX", "2011",
- "POWER", "2011", "c",
- "PRECISION", "92", "99", "2003", "2011", "c",
- "PREPARE", "92", "99", "2003", "2011", "c",
- "PRESERVE", "92", "99",
- "PREV", "c",
- "PRIMARY", "92", "99", "2003", "2011", "c",
- "PRIOR", "92", "99",
- "PRIVILEGES", "92", "99",
- "PROCEDURE", "92", "99", "2003", "2011", "c",
- "PUBLIC", "92", "99",
- "RANGE", "99", "2003", "2011", "c",
- "RANK", "2011", "c",
- "READ", "92", "99",
- "READS", "99", "2003", "2011", "c",
- "REAL", "92", "99", "2003", "2011", "c",
- "RECURSIVE", "99", "2003", "2011", "c",
- "REF", "99", "2003", "2011", "c",
- "REFERENCES", "92", "99", "2003", "2011", "c",
- "REFERENCING", "99", "2003", "2011", "c",
- "REGR_AVGX", "2011", "c",
- "REGR_AVGY", "2011", "c",
- "REGR_COUNT", "2011", "c",
- "REGR_INTERCEPT", "2011", "c",
- "REGR_R2", "2011", "c",
- "REGR_SLOPE", "2011", "c",
- "REGR_SXX", "2011", "c",
- "REGR_SXY", "2011", "c",
- "REGR_SYY", "2011", "c",
- "RELATIVE", "92", "99",
- "RELEASE", "99", "2003", "2011", "c",
- "REPEAT", "92", "99", "2003",
- "RESET", "c",
- "RESIGNAL", "92", "99", "2003",
- "RESTRICT", "92", "99",
- "RESULT", "99", "2003", "2011", "c",
- "RETURN", "92", "99", "2003", "2011", "c",
- "RETURNS", "92", "99", "2003", "2011", "c",
- "REVOKE", "92", "99", "2003", "2011", "c",
- "RIGHT", "92", "99", "2003", "2011", "c",
- "ROLE", "99",
- "ROLLBACK", "92", "99", "2003", "2011", "c",
- "ROLLUP", "99", "2003", "2011", "c",
- "ROUTINE", "92", "99",
- "ROW", "99", "2003", "2011", "c",
- "ROWS", "92", "99", "2003", "2011", "c",
- "ROW_NUMBER", "2011", "c",
- "RUNNING", "c",
- "SAVEPOINT", "99", "2003", "2011", "c",
- "SCHEMA", "92", "99",
- "SCOPE", "99", "2003", "2011", "c",
- "SCROLL", "92", "99", "2003", "2011", "c",
- "SEARCH", "99", "2003", "2011", "c",
- "SECOND", "92", "99", "2003", "2011", "c",
- "SECONDS", "2011",
- "SECTION", "92", "99",
- "SELECT", "92", "99", "2003", "2011", "c",
- "SENSITIVE", "99", "2003", "2011", "c",
- "SESSION", "92", "99",
- "SESSION_USER", "92", "99", "2003", "2011", "c",
- "SET", "92", "99", "2003", "2011", "c",
- "SETS", "99",
- "SIGNAL", "92", "99", "2003",
- "SIMILAR", "99", "2003", "2011", "c",
- "SIZE", "92", "99",
- "SMALLINT", "92", "99", "2003", "2011", "c",
- "SOME", "92", "99", "2003", "2011", "c",
- "SPACE", "92", "99",
- "SPECIFIC", "92", "99", "2003", "2011", "c",
- "SPECIFICTYPE", "99", "2003", "2011", "c",
- "SQL", "92", "99", "2003", "2011", "c",
- "SQLCODE", "92",
- "SQLERROR", "92",
- "SQLEXCEPTION", "92", "99", "2003", "2011", "c",
- "SQLSTATE", "92", "99", "2003", "2011", "c",
- "SQLWARNING", "92", "99", "2003", "2011", "c",
- "SQRT", "2011", "c",
- "START", "99", "2003", "2011", "c",
- "STATE", "99",
- "STATIC", "99", "2003", "2011", "c",
- "STDDEV_POP", "2011", "c",
- "STDDEV_SAMP", "2011", "c",
- "STREAM", "c",
- "SUBMULTISET", "2003", "2011", "c",
- "SUBSTRING", "92", "2011", "c",
- "SUBSTRING_REGEX", "2011",
- "SUM", "92", "2011", "c",
- "SYMMETRIC", "99", "2003", "2011", "c",
- "SYSTEM", "99", "2003", "2011", "c",
- "SYSTEM_USER", "92", "99", "2003", "2011", "c",
- "TABLE", "92", "99", "2003", "2011", "c",
- "TABLESAMPLE", "2003", "2011", "c",
- "TEMPORARY", "92", "99",
- "THEN", "92", "99", "2003", "2011", "c",
- "TIME", "92", "99", "2003", "2011", "c",
- "TIMESTAMP", "92", "99", "2003", "2011", "c",
- "TIMEZONE_HOUR", "92", "99", "2003", "2011", "c",
- "TIMEZONE_MINUTE", "92", "99", "2003", "2011", "c",
- "TINYINT", "c",
- "TO", "92", "99", "2003", "2011", "c",
- "TRAILING", "92", "99", "2003", "2011", "c",
- "TRANSACTION", "92", "99",
- "TRANSLATE", "92", "2011", "c",
- "TRANSLATE_REGEX", "2011",
- "TRANSLATION", "92", "99", "2003", "2011", "c",
- "TREAT", "99", "2003", "2011", "c",
- "TRIGGER", "99", "2003", "2011", "c",
- "TRIM", "92", "2011", "c",
- "TRIM_ARRAY", "2011",
- "TRUE", "92", "99", "2003", "2011", "c",
- "TRUNCATE", "2011",
- "UESCAPE", "2011", "c",
- "UNDER", "99",
- "UNDO", "92", "99", "2003",
- "UNION", "92", "99", "2003", "2011", "c",
- "UNIQUE", "92", "99", "2003", "2011", "c",
- "UNKNOWN", "92", "99", "2003", "2011", "c",
- "UNNEST", "99", "2003", "2011", "c",
- "UNTIL", "92", "99", "2003",
- "UPDATE", "92", "99", "2003", "2011", "c",
- "UPPER", "92", "2011", "c",
- "UPSERT", "c",
- "USAGE", "92", "99",
- "USER", "92", "99", "2003", "2011", "c",
- "USING", "92", "99", "2003", "2011", "c",
- "VALUE", "92", "99", "2003", "2011", "c",
- "VALUES", "92", "99", "2003", "2011", "c",
- "VARBINARY", "2011", "c",
- "VARCHAR", "92", "99", "2003", "2011", "c",
- "VARYING", "92", "99", "2003", "2011", "c",
- "VAR_POP", "2011", "c",
- "VAR_SAMP", "2011", "c",
- "VERSION", "2011",
- "VERSIONING", "2011",
- "VERSIONS", "2011",
- "VIEW", "92", "99",
- "WHEN", "92", "99", "2003", "2011", "c",
- "WHENEVER", "92", "99", "2003", "2011", "c",
- "WHERE", "92", "99", "2003", "2011", "c",
- "WHILE", "92", "99", "2003",
- "WIDTH_BUCKET", "2011", "c",
- "WINDOW", "99", "2003", "2011", "c",
- "WITH", "92", "99", "2003", "2011", "c",
- "WITHIN", "99", "2003", "2011", "c",
- "WITHOUT", "99", "2003", "2011", "c",
- "WORK", "92", "99",
- "WRITE", "92", "99",
- "YEAR", "92", "99", "2003", "2011", "c",
- "YEARS", "2011",
- "ZONE", "92", "99");
+ "ABS", "2011", "2014", "c",
+ "ABSOLUTE", "92", "99",
+ "ACTION", "92", "99",
+ "ADD", "92", "99", "2003",
+ "AFTER", "99",
+ "ALL", "92", "99", "2003", "2011", "2014", "c",
+ "ALLOCATE", "92", "99", "2003", "2011", "2014", "c",
+ "ALLOW", "c",
+ "ALTER", "92", "99", "2003", "2011", "2014", "c",
+ "AND", "92", "99", "2003", "2011", "2014", "c",
+ "ANY", "92", "99", "2003", "2011", "2014", "c",
+ "ARE", "92", "99", "2003", "2011", "2014", "c",
+ "ARRAY", "99", "2003", "2011", "2014", "c",
+ "ARRAY_AGG", "2011",
+ "ARRAY_MAX_CARDINALITY", "2014", "c",
+ "AS", "92", "99", "2003", "2011", "2014", "c",
+ "ASC", "92", "99",
+ "ASENSITIVE", "99", "2003", "2011", "2014", "c",
+ "ASSERTION", "92", "99",
+ "ASYMMETRIC", "99", "2003", "2011", "2014", "c",
+ "AT", "92", "99", "2003", "2011", "2014", "c",
+ "ATOMIC", "99", "2003", "2011", "2014", "c",
+ "AUTHORIZATION", "92", "99", "2003", "2011", "2014", "c",
+ "AVG", "92", "2011", "2014", "c",
+ "BEFORE", "99",
+ "BEGIN", "92", "99", "2003", "2011", "2014", "c",
+ "BEGIN_FRAME", "2014", "c",
+ "BEGIN_PARTITION", "2014", "c",
+ "BETWEEN", "92", "99", "2003", "2011", "2014", "c",
+ "BIGINT", "2003", "2011", "2014", "c",
+ "BINARY", "99", "2003", "2011", "2014", "c",
+ "BIT", "92", "99", "c",
+ "BIT_LENGTH", "92",
+ "BLOB", "99", "2003", "2011", "2014", "c",
+ "BOOLEAN", "99", "2003", "2011", "2014", "c",
+ "BOTH", "92", "99", "2003", "2011", "2014", "c",
+ "BREADTH", "99",
+ "BY", "92", "99", "2003", "2011", "2014", "c",
+ "CALL", "92", "99", "2003", "2011", "2014", "c",
+ "CALLED", "2003", "2011", "2014", "c",
+ "CARDINALITY", "2011", "2014", "c",
+ "CASCADE", "92", "99",
+ "CASCADED", "92", "99", "2003", "2011", "2014", "c",
+ "CASE", "92", "99", "2003", "2011", "2014", "c",
+ "CAST", "92", "99", "2003", "2011", "2014", "c",
+ "CATALOG", "92", "99",
+ "CEIL", "2011", "2014", "c",
+ "CEILING", "2011", "2014", "c",
+ "CHAR", "92", "99", "2003", "2011", "2014", "c",
+ "CHARACTER", "92", "99", "2003", "2011", "2014", "c",
+ "CHARACTER_LENGTH", "92", "2011", "2014", "c",
+ "CHAR_LENGTH", "92", "2011", "2014", "c",
+ "CHECK", "92", "99", "2003", "2011", "2014", "c",
+ "CLASSIFIER", "2014", "c",
+ "CLOB", "99", "2003", "2011", "2014", "c",
+ "CLOSE", "92", "99", "2003", "2011", "2014", "c",
+ "COALESCE", "92", "2011", "2014", "c",
+ "COLLATE", "92", "99", "2003", "2011", "2014", "c",
+ "COLLATION", "92", "99",
+ "COLLECT", "2011", "2014", "c",
+ "COLUMN", "92", "99", "2003", "2011", "2014", "c",
+ "COMMIT", "92", "99", "2003", "2011", "2014", "c",
+ "CONDITION", "92", "99", "2003", "2011", "2014", "c",
+ "CONNECT", "92", "99", "2003", "2011", "2014", "c",
+ "CONNECTION", "92", "99",
+ "CONSTRAINT", "92", "99", "2003", "2011", "2014", "c",
+ "CONSTRAINTS", "92", "99",
+ "CONSTRUCTOR", "99",
+ "CONTAINS", "92", "2011", "2014", "c",
+ "CONTINUE", "92", "99", "2003",
+ "CONVERT", "92", "2011", "2014", "c",
+ "CORR", "2011", "2014", "c",
+ "CORRESPONDING", "92", "99", "2003", "2011", "2014", "c",
+ "COUNT", "92", "2011", "2014", "c",
+ "COVAR_POP", "2011", "2014", "c",
+ "COVAR_SAMP", "2011", "2014", "c",
+ "CREATE", "92", "99", "2003", "2011", "2014", "c",
+ "CROSS", "92", "99", "2003", "2011", "2014", "c",
+ "CUBE", "99", "2003", "2011", "2014", "c",
+ "CUME_DIST", "2011", "2014", "c",
+ "CURRENT", "92", "99", "2003", "2011", "2014", "c",
+ "CURRENT_CATALOG", "2011", "2014", "c",
+ "CURRENT_DATE", "92", "99", "2003", "2011", "2014", "c",
+ "CURRENT_DEFAULT_TRANSFORM_GROUP", "99", "2003", "2011", "2014", "c",
+ "CURRENT_PATH", "92", "99", "2003", "2011", "2014", "c",
+ "CURRENT_ROLE", "99", "2003", "2011", "2014", "c",
+ "CURRENT_ROW", "2014", "c",
+ "CURRENT_SCHEMA", "2011", "2014", "c",
+ "CURRENT_TIME", "92", "99", "2003", "2011", "2014", "c",
+ "CURRENT_TIMESTAMP", "92", "99", "2003", "2011", "2014", "c",
+ "CURRENT_TRANSFORM_GROUP_FOR_TYPE", "99", "2003", "2011", "2014", "c",
+ "CURRENT_USER", "92", "99", "2003", "2011", "2014", "c",
+ "CURSOR", "92", "99", "2003", "2011", "2014", "c",
+ "CYCLE", "99", "2003", "2011", "2014", "c",
+ "DATA", "99",
+ "DATE", "92", "99", "2003", "2011", "2014", "c",
+ "DAY", "92", "99", "2003", "2011", "2014", "c",
+ "DAYS", "2011",
+ "DEALLOCATE", "92", "99", "2003", "2011", "2014", "c",
+ "DEC", "92", "99", "2003", "2011", "2014", "c",
+ "DECIMAL", "92", "99", "2003", "2011", "2014", "c",
+ "DECLARE", "92", "99", "2003", "2011", "2014", "c",
+ "DEFAULT", "92", "99", "2003", "2011", "2014", "c",
+ "DEFERRABLE", "92", "99",
+ "DEFERRED", "92", "99",
+ "DEFINE", "2014", "c",
+ "DELETE", "92", "99", "2003", "2011", "2014", "c",
+ "DENSE_RANK", "2011", "2014", "c",
+ "DEPTH", "99",
+ "DEREF", "99", "2003", "2011", "2014", "c",
+ "DESC", "92", "99",
+ "DESCRIBE", "92", "99", "2003", "2011", "2014", "c",
+ "DESCRIPTOR", "92", "99",
+ "DETERMINISTIC", "92", "99", "2003", "2011", "2014", "c",
+ "DIAGNOSTICS", "92", "99",
+ "DISALLOW", "c",
+ "DISCONNECT", "92", "99", "2003", "2011", "2014", "c",
+ "DISTINCT", "92", "99", "2003", "2011", "2014", "c",
+ "DO", "92", "99", "2003",
+ "DOMAIN", "92", "99",
+ "DOUBLE", "92", "99", "2003", "2011", "2014", "c",
+ "DROP", "92", "99", "2003", "2011", "2014", "c",
+ "DYNAMIC", "99", "2003", "2011", "2014", "c",
+ "EACH", "99", "2003", "2011", "2014", "c",
+ "ELEMENT", "2003", "2011", "2014", "c",
+ "ELSE", "92", "99", "2003", "2011", "2014", "c",
+ "ELSEIF", "92", "99", "2003",
+ "EMPTY", "2014", "c",
+ "END", "92", "99", "2003", "2011", "2014", "c",
+ "END-EXEC", "2011", "2014", "c",
+ "END_FRAME", "2014", "c",
+ "END_PARTITION", "2014", "c",
+ "EQUALS", "99", "2014", "c",
+ "ESCAPE", "92", "99", "2003", "2011", "2014", "c",
+ "EVERY", "2011", "2014", "c",
+ "EXCEPT", "92", "99", "2003", "2011", "2014", "c",
+ "EXCEPTION", "92", "99",
+ "EXEC", "92", "99", "2003", "2011", "2014", "c",
+ "EXECUTE", "92", "99", "2003", "2011", "2014", "c",
+ "EXISTS", "92", "99", "2003", "2011", "2014", "c",
+ "EXIT", "92", "99", "2003",
+ "EXP", "2011", "2014", "c",
+ "EXPLAIN", "c",
+ "EXTEND", "c",
+ "EXTERNAL", "92", "99", "2003", "2011", "2014", "c",
+ "EXTRACT", "92", "2011", "2014", "c",
+ "FALSE", "92", "99", "2003", "2011", "2014", "c",
+ "FETCH", "92", "99", "2003", "2011", "2014", "c",
+ "FILTER", "99", "2003", "2011", "2014", "c",
+ "FIRST", "92", "99",
+ "FIRST_VALUE", "2011", "2014", "c",
+ "FLOAT", "92", "99", "2003", "2011", "2014", "c",
+ "FLOOR", "2011", "2014", "c",
+ "FOR", "92", "99", "2003", "2011", "2014", "c",
+ "FOREIGN", "92", "99", "2003", "2011", "2014", "c",
+ "FOREVER", "2011",
+ "FOUND", "92", "99",
+ "FRAME_ROW", "2014", "c",
+ "FREE", "99", "2003", "2011", "2014", "c",
+ "FROM", "92", "99", "2003", "2011", "2014", "c",
+ "FULL", "92", "99", "2003", "2011", "2014", "c",
+ "FUNCTION", "92", "99", "2003", "2011", "2014", "c",
+ "FUSION", "2011", "2014", "c",
+ "GENERAL", "99",
+ "GET", "92", "99", "2003", "2011", "2014", "c",
+ "GLOBAL", "92", "99", "2003", "2011", "2014", "c",
+ "GO", "92", "99",
+ "GOTO", "92", "99",
+ "GRANT", "92", "99", "2003", "2011", "2014", "c",
+ "GROUP", "92", "99", "2003", "2011", "2014", "c",
+ "GROUPING", "99", "2003", "2011", "2014", "c",
+ "GROUPS", "2014", "c",
+ "HANDLER", "92", "99", "2003",
+ "HAVING", "92", "99", "2003", "2011", "2014", "c",
+ "HOLD", "99", "2003", "2011", "2014", "c",
+ "HOUR", "92", "99", "2003", "2011", "2014", "c",
+ "HOURS", "2011",
+ "IDENTITY", "92", "99", "2003", "2011", "2014", "c",
+ "IF", "92", "99", "2003",
+ "IMMEDIATE", "92", "99", "2003",
+ "IMMEDIATELY",
+ "IMPORT", "c",
+ "IN", "92", "99", "2003", "2011", "2014", "c",
+ "INDICATOR", "92", "99", "2003", "2011", "2014", "c",
+ "INITIAL", "2014", "c",
+ "INITIALLY", "92", "99",
+ "INNER", "92", "99", "2003", "2011", "2014", "c",
+ "INOUT", "92", "99", "2003", "2011", "2014", "c",
+ "INPUT", "92", "99", "2003",
+ "INSENSITIVE", "92", "99", "2003", "2011", "2014", "c",
+ "INSERT", "92", "99", "2003", "2011", "2014", "c",
+ "INT", "92", "99", "2003", "2011", "2014", "c",
+ "INTEGER", "92", "99", "2003", "2011", "2014", "c",
+ "INTERSECT", "92", "99", "2003", "2011", "2014", "c",
+ "INTERSECTION", "2011", "2014", "c",
+ "INTERVAL", "92", "99", "2003", "2011", "2014", "c",
+ "INTO", "92", "99", "2003", "2011", "2014", "c",
+ "IS", "92", "99", "2003", "2011", "2014", "c",
+ "ISOLATION", "92", "99",
+ "ITERATE", "99", "2003",
+ "JOIN", "92", "99", "2003", "2011", "2014", "c",
+ "KEEP", "2011",
+ "KEY", "92", "99",
+ "LAG", "2011", "2014", "c",
+ "LANGUAGE", "92", "99", "2003", "2011", "2014", "c",
+ "LARGE", "99", "2003", "2011", "2014", "c",
+ "LAST", "92", "99",
+ "LAST_VALUE", "2011", "2014", "c",
+ "LATERAL", "99", "2003", "2011", "2014", "c",
+ "LEAD", "2011", "2014", "c",
+ "LEADING", "92", "99", "2003", "2011", "2014", "c",
+ "LEAVE", "92", "99", "2003",
+ "LEFT", "92", "99", "2003", "2011", "2014", "c",
+ "LEVEL", "92", "99",
+ "LIKE", "92", "99", "2003", "2011", "2014", "c",
+ "LIKE_REGEX", "2011", "2014", "c",
+ "LIMIT", "c",
+ "LN", "2011", "2014", "c",
+ "LOCAL", "92", "99", "2003", "2011", "2014", "c",
+ "LOCALTIME", "99", "2003", "2011", "2014", "c",
+ "LOCALTIMESTAMP", "99", "2003", "2011", "2014", "c",
+ "LOCATOR", "99",
+ "LOOP", "92", "99", "2003",
+ "LOWER", "92", "2011", "2014", "c",
+ "MAP", "99",
+ "MATCH", "92", "99", "2003", "2011", "2014", "c",
+ "MATCHES", "2014", "c",
+ "MATCH_NUMBER", "2014", "c",
+ "MATCH_RECOGNIZE", "2014", "c",
+ "MAX", "92", "2011", "2014", "c",
+ "MAX_CARDINALITY", "2011",
+ "MEASURES", "c",
+ "MEMBER", "2003", "2011", "2014", "c",
+ "MERGE", "2003", "2011", "2014", "c",
+ "METHOD", "99", "2003", "2011", "2014", "c",
+ "MIN", "92", "2011", "2014", "c",
+ "MINUS", "c",
+ "MINUTE", "92", "99", "2003", "2011", "2014", "c",
+ "MINUTES", "2011",
+ "MOD", "2011", "2014", "c",
+ "MODIFIES", "99", "2003", "2011", "2014", "c",
+ "MODULE", "92", "99", "2003", "2011", "2014", "c",
+ "MONTH", "92", "99", "2003", "2011", "2014", "c",
+ "MULTISET", "2003", "2011", "2014", "c",
+ "NAMES", "92", "99",
+ "NATIONAL", "92", "99", "2003", "2011", "2014", "c",
+ "NATURAL", "92", "99", "2003", "2011", "2014", "c",
+ "NCHAR", "92", "99", "2003", "2011", "2014", "c",
+ "NCLOB", "99", "2003", "2011", "2014", "c",
+ "NEW", "99", "2003", "2011", "2014", "c",
+ "NEXT", "92", "99", "c",
+ "NO", "92", "99", "2003", "2011", "2014", "c",
+ "NONE", "99", "2003", "2011", "2014", "c",
+ "NORMALIZE", "2011", "2014", "c",
+ "NOT", "92", "99", "2003", "2011", "2014", "c",
+ "NTH_VALUE", "2011", "2014", "c",
+ "NTILE", "2011", "2014", "c",
+ "NULL", "92", "99", "2003", "2011", "2014", "c",
+ "NULLIF", "92", "2011", "2014", "c",
+ "NUMERIC", "92", "99", "2003", "2011", "2014", "c",
+ "OBJECT", "99",
+ "OCCURRENCES_REGEX", "2011", "2014", "c",
+ "OCTET_LENGTH", "92", "2011", "2014", "c",
+ "OF", "92", "99", "2003", "2011", "2014", "c",
+ "OFFSET", "2011", "2014", "c",
+ "OLD", "99", "2003", "2011", "2014", "c",
+ "OMIT", "2014", "c",
+ "ON", "92", "99", "2003", "2011", "2014", "c",
+ "ONE", "2014", "c",
+ "ONLY", "92", "99", "2003", "2011", "2014", "c",
+ "OPEN", "92", "99", "2003", "2011", "2014", "c",
+ "OPTION", "92", "99",
+ "OR", "92", "99", "2003", "2011", "2014", "c",
+ "ORDER", "92", "99", "2003", "2011", "2014", "c",
+ "ORDINALITY", "99",
+ "OUT", "92", "99", "2003", "2011", "2014", "c",
+ "OUTER", "92", "99", "2003", "2011", "2014", "c",
+ "OUTPUT", "92", "99", "2003",
+ "OVER", "99", "2003", "2011", "2014", "c",
+ "OVERLAPS", "92", "99", "2003", "2011", "2014", "c",
+ "OVERLAY", "2011", "2014", "c",
+ "PAD", "92", "99",
+ "PARAMETER", "92", "99", "2003", "2011", "2014", "c",
+ "PARTIAL", "92", "99",
+ "PARTITION", "99", "2003", "2011", "2014", "c",
+ "PATH", "92", "99",
+ "PATTERN", "2014", "c",
+ "PER", "2014", "c",
+ "PERCENT", "2014", "c",
+ "PERCENTILE_CONT", "2011", "2014", "c",
+ "PERCENTILE_DISC", "2011", "2014", "c",
+ "PERCENT_RANK", "2011", "2014", "c",
+ "PERIOD", "2014", "c",
+ "PERMUTE", "c",
+ "PORTION", "2014", "c",
+ "POSITION", "92", "2011", "2014", "c",
+ "POSITION_REGEX", "2011", "2014", "c",
+ "POWER", "2011", "2014", "c",
+ "PRECEDES", "2014", "c",
+ "PRECISION", "92", "99", "2003", "2011", "2014", "c",
+ "PREPARE", "92", "99", "2003", "2011", "2014", "c",
+ "PRESERVE", "92", "99",
+ "PREV", "c",
+ "PRIMARY", "92", "99", "2003", "2011", "2014", "c",
+ "PRIOR", "92", "99",
+ "PRIVILEGES", "92", "99",
+ "PROCEDURE", "92", "99", "2003", "2011", "2014", "c",
+ "PUBLIC", "92", "99",
+ "RANGE", "99", "2003", "2011", "2014", "c",
+ "RANK", "2011", "2014", "c",
+ "READ", "92", "99",
+ "READS", "99", "2003", "2011", "2014", "c",
+ "REAL", "92", "99", "2003", "2011", "2014", "c",
+ "RECURSIVE", "99", "2003", "2011", "2014", "c",
+ "REF", "99", "2003", "2011", "2014", "c",
+ "REFERENCES", "92", "99", "2003", "2011", "2014", "c",
+ "REFERENCING", "99", "2003", "2011", "2014", "c",
+ "REGR_AVGX", "2011", "2014", "c",
+ "REGR_AVGY", "2011", "2014", "c",
+ "REGR_COUNT", "2011", "2014", "c",
+ "REGR_INTERCEPT", "2011", "2014", "c",
+ "REGR_R2", "2011", "2014", "c",
+ "REGR_SLOPE", "2011", "2014", "c",
+ "REGR_SXX", "2011", "2014", "c",
+ "REGR_SXY", "2011", "2014", "c",
+ "REGR_SYY", "2011", "2014", "c",
+ "RELATIVE", "92", "99",
+ "RELEASE", "99", "2003", "2011", "2014", "c",
+ "REPEAT", "92", "99", "2003",
+ "RESET", "c",
+ "RESIGNAL", "92", "99", "2003",
+ "RESTRICT", "92", "99",
+ "RESULT", "99", "2003", "2011", "2014", "c",
+ "RETURN", "92", "99", "2003", "2011", "2014", "c",
+ "RETURNS", "92", "99", "2003", "2011", "2014", "c",
+ "REVOKE", "92", "99", "2003", "2011", "2014", "c",
+ "RIGHT", "92", "99", "2003", "2011", "2014", "c",
+ "ROLE", "99",
+ "ROLLBACK", "92", "99", "2003", "2011", "2014", "c",
+ "ROLLUP", "99", "2003", "2011", "2014", "c",
+ "ROUTINE", "92", "99",
+ "ROW", "99", "2003", "2011", "2014", "c",
+ "ROWS", "92", "99", "2003", "2011", "2014", "c",
+ "ROW_NUMBER", "2011", "2014", "c",
+ "RUNNING", "2014", "c",
+ "SAVEPOINT", "99", "2003", "2011", "2014", "c",
+ "SCHEMA", "92", "99",
+ "SCOPE", "99", "2003", "2011", "2014", "c",
+ "SCROLL", "92", "99", "2003", "2011", "2014", "c",
+ "SEARCH", "99", "2003", "2011", "2014", "c",
+ "SECOND", "92", "99", "2003", "2011", "2014", "c",
+ "SECONDS", "2011",
+ "SECTION", "92", "99",
+ "SEEK", "2014", "c",
+ "SELECT", "92", "99", "2003", "2011", "2014", "c",
+ "SENSITIVE", "99", "2003", "2011", "2014", "c",
+ "SESSION", "92", "99",
+ "SESSION_USER", "92", "99", "2003", "2011", "2014", "c",
+ "SET", "92", "99", "2003", "2011", "2014", "c",
+ "SETS", "99",
+ "SHOW", "2014", "c",
+ "SIGNAL", "92", "99", "2003",
+ "SIMILAR", "99", "2003", "2011", "2014", "c",
+ "SIZE", "92", "99",
+ "SKIP", "2014", "c",
+ "SMALLINT", "92", "99", "2003", "2011", "2014", "c",
+ "SOME", "92", "99", "2003", "2011", "2014", "c",
+ "SPACE", "92", "99",
+ "SPECIFIC", "92", "99", "2003", "2011", "2014", "c",
+ "SPECIFICTYPE", "99", "2003", "2011", "2014", "c",
+ "SQL", "92", "99", "2003", "2011", "2014", "c",
+ "SQLCODE", "92",
+ "SQLERROR", "92",
+ "SQLEXCEPTION", "92", "99", "2003", "2011", "2014", "c",
+ "SQLSTATE", "92", "99", "2003", "2011", "2014", "c",
+ "SQLWARNING", "92", "99", "2003", "2011", "2014", "c",
+ "SQRT", "2011", "2014", "c",
+ "START", "99", "2003", "2011", "2014", "c",
+ "STATE", "99",
+ "STATIC", "99", "2003", "2011", "2014", "c",
+ "STDDEV_POP", "2011", "2014", "c",
+ "STDDEV_SAMP", "2011", "2014", "c",
+ "STREAM", "c",
+ "SUBMULTISET", "2003", "2011", "2014", "c",
+ "SUBSET", "2014", "c",
+ "SUBSTRING", "92", "2011", "2014", "c",
+ "SUBSTRING_REGEX", "2011", "2014", "c",
+ "SUCCEEDS", "2014", "c",
+ "SUM", "92", "2011", "2014", "c",
+ "SYMMETRIC", "99", "2003", "2011", "2014", "c",
+ "SYSTEM", "99", "2003", "2011", "2014", "c",
+ "SYSTEM_TIME", "2014", "c",
+ "SYSTEM_USER", "92", "99", "2003", "2011", "2014", "c",
+ "TABLE", "92", "99", "2003", "2011", "2014", "c",
+ "TABLESAMPLE", "2003", "2011", "2014", "c",
+ "TEMPORARY", "92", "99",
+ "THEN", "92", "99", "2003", "2011", "2014", "c",
+ "TIME", "92", "99", "2003", "2011", "2014", "c",
+ "TIMESTAMP", "92", "99", "2003", "2011", "2014", "c",
+ "TIMEZONE_HOUR", "92", "99", "2003", "2011", "2014", "c",
+ "TIMEZONE_MINUTE", "92", "99", "2003", "2011", "2014", "c",
+ "TINYINT", "c",
+ "TO", "92", "99", "2003", "2011", "2014", "c",
+ "TRAILING", "92", "99", "2003", "2011", "2014", "c",
+ "TRANSACTION", "92", "99",
+ "TRANSLATE", "92", "2011", "2014", "c",
+ "TRANSLATE_REGEX", "2011", "2014", "c",
+ "TRANSLATION", "92", "99", "2003", "2011", "2014", "c",
+ "TREAT", "99", "2003", "2011", "2014", "c",
+ "TRIGGER", "99", "2003", "2011", "2014", "c",
+ "TRIM", "92", "2011", "2014", "c",
+ "TRIM_ARRAY", "2011", "2014", "c",
+ "TRUE", "92", "99", "2003", "2011", "2014", "c",
+ "TRUNCATE", "2011", "2014", "c",
+ "UESCAPE", "2011", "2014", "c",
+ "UNDER", "99",
+ "UNDO", "92", "99", "2003",
+ "UNION", "92", "99", "2003", "2011", "2014", "c",
+ "UNIQUE", "92", "99", "2003", "2011", "2014", "c",
+ "UNKNOWN", "92", "99", "2003", "2011", "2014", "c",
+ "UNNEST", "99", "2003", "2011", "2014", "c",
+ "UNTIL", "92", "99", "2003",
+ "UPDATE", "92", "99", "2003", "2011", "2014", "c",
+ "UPPER", "92", "2011", "2014", "c",
+ "UPSERT", "c",
+ "USAGE", "92", "99",
+ "USER", "92", "99", "2003", "2011", "2014", "c",
+ "USING", "92", "99", "2003", "2011", "2014", "c",
+ "VALUE", "92", "99", "2003", "2011", "2014", "c",
+ "VALUES", "92", "99", "2003", "2011", "2014", "c",
+ "VALUE_OF", "2014", "c",
+ "VARBINARY", "2011", "2014", "c",
+ "VARCHAR", "92", "99", "2003", "2011", "2014", "c",
+ "VARYING", "92", "99", "2003", "2011", "2014", "c",
+ "VAR_POP", "2011", "2014", "c",
+ "VAR_SAMP", "2011", "2014", "c",
+ "VERSION", "2011",
+ "VERSIONING", "2011", "2014", "c",
+ "VERSIONS", "2011",
+ "VIEW", "92", "99",
+ "WHEN", "92", "99", "2003", "2011", "2014", "c",
+ "WHENEVER", "92", "99", "2003", "2011", "2014", "c",
+ "WHERE", "92", "99", "2003", "2011", "2014", "c",
+ "WHILE", "92", "99", "2003",
+ "WIDTH_BUCKET", "2011", "2014", "c",
+ "WINDOW", "99", "2003", "2011", "2014", "c",
+ "WITH", "92", "99", "2003", "2011", "2014", "c",
+ "WITHIN", "99", "2003", "2011", "2014", "c",
+ "WITHOUT", "99", "2003", "2011", "2014", "c",
+ "WORK", "92", "99",
+ "WRITE", "92", "99",
+ "YEAR", "92", "99", "2003", "2011", "2014", "c",
+ "YEARS", "2011",
+ "ZONE", "92", "99");
private static final String ANY = "(?s).*";
@@ -628,6 +657,7 @@ public class SqlParserTest {
case "99":
case "2003":
case "2011":
+ case "2014":
case "c":
assert r != null;
if (dialect == null || dialect.equals(w)) {
@@ -1602,7 +1632,7 @@ public class SqlParserTest {
// SQL standard does not allow WITH to contain WITH
checkFails("with emp2 as (select * from emp)\n"
+ "^with^ dept2 as (select * from dept)\n"
- + "select 1 as one from emp, dept",
+ + "select 1 as uno from emp, dept",
"(?s)Encountered \"with\" at .*");
}
@@ -1611,10 +1641,10 @@ public class SqlParserTest {
check("with emp2 as (select * from emp)\n"
+ "(\n"
+ " with dept2 as (select * from dept)\n"
- + " select 1 as one from empDept)",
+ + " select 1 as uno from empDept)",
"WITH `EMP2` AS (SELECT *\n"
+ "FROM `EMP`) (WITH `DEPT2` AS (SELECT *\n"
- + "FROM `DEPT`) (SELECT 1 AS `ONE`\n"
+ + "FROM `DEPT`) (SELECT 1 AS `UNO`\n"
+ "FROM `EMPDEPT`))");
}
@@ -2172,8 +2202,8 @@ public class SqlParserTest {
checkExpSame("'foo'");
checkExpSame("100");
check(
- "select 1 as one, 'x' as x, null as n from emp",
- "SELECT 1 AS `ONE`, 'x' AS `X`, NULL AS `N`\n"
+ "select 1 as uno, 'x' as x, null as n from emp",
+ "SELECT 1 AS `UNO`, 'x' AS `X`, NULL AS `N`\n"
+ "FROM `EMP`");
// Even though it looks like a date, it's just a string.
@@ -6865,9 +6895,11 @@ public class SqlParserTest {
}
}
- assertThat("At least one new reserved keyword is added in parser. "
- + "Make sure to check the new keywords are intended to be a reserved keywords.",
- reservedKeywords, is(getReservedKeywords()));
+ final String reason = "The parser has at least one new reserved keyword. "
+ + "Are you sure it should be reserved? Difference:\n"
+ + DiffTestCase.diffLines(ImmutableList.copyOf(getReservedKeywords()),
+ ImmutableList.copyOf(reservedKeywords));
+ assertThat(reason, reservedKeywords, is(getReservedKeywords()));
}
/** Generates a copy of {@code reference.md} with the current set of key
http://git-wip-us.apache.org/repos/asf/calcite/blob/d97c14c5/core/src/test/java/org/apache/calcite/sql/test/SqlAdvisorTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/calcite/sql/test/SqlAdvisorTest.java b/core/src/test/java/org/apache/calcite/sql/test/SqlAdvisorTest.java
index d598fbf..356709b 100644
--- a/core/src/test/java/org/apache/calcite/sql/test/SqlAdvisorTest.java
+++ b/core/src/test/java/org/apache/calcite/sql/test/SqlAdvisorTest.java
@@ -157,7 +157,9 @@ public class SqlAdvisorTest extends SqlValidatorTestCase {
"KEYWORD(GROUPING)",
"KEYWORD(HOUR)",
"KEYWORD(INTERVAL)",
+ "KEYWORD(LAG)",
"KEYWORD(LAST_VALUE)",
+ "KEYWORD(LEAD)",
"KEYWORD(LN)",
"KEYWORD(LOCALTIME)",
"KEYWORD(LOCALTIMESTAMP)",
@@ -171,6 +173,7 @@ public class SqlAdvisorTest extends SqlValidatorTestCase {
"KEYWORD(NEW)",
"KEYWORD(NEXT)",
"KEYWORD(NOT)",
+ "KEYWORD(NTILE)",
"KEYWORD(NULL)",
"KEYWORD(NULLIF)",
"KEYWORD(OCTET_LENGTH)",
@@ -199,6 +202,7 @@ public class SqlAdvisorTest extends SqlValidatorTestCase {
"KEYWORD(TRANSLATE)",
"KEYWORD(TRIM)",
"KEYWORD(TRUE)",
+ "KEYWORD(TRUNCATE)",
"KEYWORD(UNKNOWN)",
"KEYWORD(UPPER)",
"KEYWORD(USER)",
http://git-wip-us.apache.org/repos/asf/calcite/blob/d97c14c5/core/src/test/java/org/apache/calcite/test/JdbcTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/calcite/test/JdbcTest.java b/core/src/test/java/org/apache/calcite/test/JdbcTest.java
index 8138ebf..6819052 100644
--- a/core/src/test/java/org/apache/calcite/test/JdbcTest.java
+++ b/core/src/test/java/org/apache/calcite/test/JdbcTest.java
@@ -376,7 +376,7 @@ public class JdbcTest {
.runs();
modelWithView(
- "select \"name\", \"empid\" as e, \"salary\", \"empid\" + 3 as e3, 1 as one\n"
+ "select \"name\", \"empid\" as e, \"salary\", \"empid\" + 3 as e3, 1 as uno\n"
+ "from \"MUTABLE_EMPLOYEES\"\n"
+ "where \"commission\" = 100 AND \"deptno\" = 20",
true)
http://git-wip-us.apache.org/repos/asf/calcite/blob/d97c14c5/core/src/test/java/org/apache/calcite/test/SqlToRelConverterTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/calcite/test/SqlToRelConverterTest.java b/core/src/test/java/org/apache/calcite/test/SqlToRelConverterTest.java
index 494ec44..64ff7a5 100644
--- a/core/src/test/java/org/apache/calcite/test/SqlToRelConverterTest.java
+++ b/core/src/test/java/org/apache/calcite/test/SqlToRelConverterTest.java
@@ -97,7 +97,7 @@ public class SqlToRelConverterTest extends SqlToRelTestBase {
@Test public void testAliasList() {
final String sql = "select a + b from (\n"
- + " select deptno, 1 as one, name from dept\n"
+ + " select deptno, 1 as uno, name from dept\n"
+ ") as d(a, b, c)\n"
+ "where c like 'X%'";
sql(sql).ok();