Class DrillParserImpl
- All Implemented Interfaces:
DrillParserImplConstants
- Direct Known Subclasses:
DrillParserWithCompoundIdConverter
The public wrapper for this parser is SqlParser
.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.calcite.sql.parser.SqlAbstractParserImpl
org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext, org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState, org.apache.calcite.sql.parser.SqlAbstractParserImpl.Metadata, org.apache.calcite.sql.parser.SqlAbstractParserImpl.MetadataImpl
-
Field Summary
Modifier and TypeFieldDescriptionstatic final org.apache.calcite.sql.parser.SqlParserImplFactory
SqlParserImplFactory
implementation for creating parser.Next token.Current token.Generated Token Manager.Fields inherited from class org.apache.calcite.sql.parser.SqlAbstractParserImpl
nDynamicParams, originalSql, warnings
Fields inherited from interface org.apache.drill.exec.planner.sql.parser.impl.DrillParserImplConstants
A, ABS, ABSENT, ABSOLUTE, ACTION, ADA, ADD, ADMIN, AFTER, ALIAS, ALIASES, ALL, ALLOCATE, ALLOW, ALTER, ALWAYS, ANALYZE, AND, ANY, APPLY, APPROX_NUMERIC_LITERAL, ARE, ARRAY, ARRAY_AGG, ARRAY_CONCAT_AGG, ARRAY_MAX_CARDINALITY, AS, ASC, ASENSITIVE, ASSERTION, ASSIGNMENT, ASYMMETRIC, AT, ATOMIC, ATTRIBUTE, ATTRIBUTES, AUTHORIZATION, AVG, BACK_QUOTED_IDENTIFIER, BEFORE, BEGIN, BEGIN_FRAME, BEGIN_PARTITION, BEL, BERNOULLI, BETWEEN, BIG_QUERY_BACK_QUOTED_IDENTIFIER, BIG_QUERY_DOUBLE_QUOTED_STRING, BIG_QUERY_QUOTED_STRING, BIGINT, BINARY, BINARY_STRING_LITERAL, BIT, BLOB, BOOLEAN, BOTH, BQHID, BQID, BRACKET_QUOTED_IDENTIFIER, BREADTH, BTID, BY, C, C_STYLE_ESCAPED_STRING_LITERAL, CALL, CALLED, CARDINALITY, CARET, CASCADE, CASCADED, CASE, CAST, CATALOG, CATALOG_NAME, CEIL, CEILING, CENTURY, CHAIN, CHAR, CHAR_LENGTH, CHARACTER, CHARACTER_LENGTH, CHARACTER_SET_CATALOG, CHARACTER_SET_NAME, CHARACTER_SET_SCHEMA, CHARACTERISTICS, CHARACTERS, CHARSETNAME, CHECK, CLASS_ORIGIN, CLASSIFIER, CLOB, CLOSE, COALESCE, COBOL, COLLATE, COLLATION, COLLATION_CATALOG, COLLATION_ID, COLLATION_NAME, COLLATION_SCHEMA, COLLECT, COLON, COLUMN, COLUMN_NAME, COLUMNS, COMMA, COMMAND_FUNCTION, COMMAND_FUNCTION_CODE, COMMENT_END, COMMIT, COMMITTED, COMPUTE, CONCAT, CONDITION, CONDITION_NUMBER, CONDITIONAL, CONNECT, CONNECTION, CONNECTION_NAME, CONSTRAINT, CONSTRAINT_CATALOG, CONSTRAINT_NAME, CONSTRAINT_SCHEMA, CONSTRAINTS, CONSTRUCTOR, CONTAINS, CONTINUE, CONVERT, CORR, CORRESPONDING, COUNT, COVAR_POP, COVAR_SAMP, CREATE, CROSS, CUBE, CUME_DIST, CURRENT, CURRENT_CATALOG, CURRENT_DATE, CURRENT_DEFAULT_TRANSFORM_GROUP, CURRENT_PATH, CURRENT_ROLE, CURRENT_ROW, CURRENT_SCHEMA, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_TRANSFORM_GROUP_FOR_TYPE, CURRENT_USER, CURSOR, CURSOR_NAME, CYCLE, DATA, DATABASE, DATABASES, DATE, DATE_TRUNC, DATETIME, DATETIME_INTERVAL_CODE, DATETIME_INTERVAL_PRECISION, DAY, DAYS, DEALLOCATE, DEC, DECADE, DECIMAL, DECIMAL_NUMERIC_LITERAL, DECLARE, DEFAULT, DEFAULT_, DEFAULTS, DEFERRABLE, DEFERRED, DEFINE, DEFINED, DEFINER, DEGREE, DELETE, DENSE_RANK, DEPTH, DEREF, DERIVED, DESC, DESCRIBE, DESCRIPTION, DESCRIPTOR, DETERMINISTIC, DIAGNOSTICS, DIGIT, DISALLOW, DISCONNECT, DISPATCH, DISTINCT, DOLLAR, DOMAIN, DOT, DOT_FORMAT, DOUBLE, DOUBLE_PERIOD, DOW, DOY, DQID, DROP, DYNAMIC, DYNAMIC_FUNCTION, DYNAMIC_FUNCTION_CODE, EACH, ELEMENT, ELSE, EMPTY, ENCODING, END, END_EXEC, END_FRAME, END_PARTITION, EOF, EPOCH, EQ, EQUALS, ERROR, ESCAPE, ESTIMATE, EVERY, EXCEPT, EXCEPTION, EXCLUDE, EXCLUDING, EXEC, EXECUTE, EXISTS, EXP, EXPLAIN, EXPONENT, EXTEND, EXTERNAL, EXTRACT, FALSE, FETCH, FILES, FILTER, FINAL, FIRST, FIRST_VALUE, FLOAT, FLOOR, FOLLOWING, FOR, FOREIGN, FORMAL_COMMENT, FORMAT, FORTRAN, FOUND, FRAC_SECOND, FRAME_ROW, FREE, FRIDAY, FROM, FULL, FUNCTION, FUSION, G, GE, GENERAL, GENERATED, GEOMETRY, GET, GLOBAL, GO, GOTO, GRANT, GRANTED, GROUP, GROUP_CONCAT, GROUPING, GROUPS, GT, HAVING, HEXDIGIT, HIERARCHY, HINT_BEG, HOLD, HOOK, HOP, HOUR, HOURS, HYPHENATED_IDENTIFIER, IDENTIFIER, IDENTITY, IF, IGNORE, ILIKE, IMMEDIATE, IMMEDIATELY, IMPLEMENTATION, IMPORT, IN, IN_FORMAL_COMMENT, IN_MULTI_LINE_COMMENT, INCLUDE, INCLUDING, INCREMENT, INDICATOR, INITIAL, INITIALLY, INNER, INOUT, INPUT, INSENSITIVE, INSERT, INSTANCE, INSTANTIABLE, INT, INTEGER, INTERSECT, INTERSECTION, INTERVAL, INTO, INVOKER, IS, ISODOW, ISOLATION, ISOYEAR, JAR, JAVA, JOIN, JSON, JSON_ARRAY, JSON_ARRAYAGG, JSON_EXISTS, JSON_OBJECT, JSON_OBJECTAGG, JSON_QUERY, JSON_VALUE, K, KEY, KEY_MEMBER, KEY_TYPE, LABEL, LAG, LANGUAGE, LARGE, LAST, LAST_VALUE, LATERAL, LBRACE, LBRACE_D, LBRACE_FN, LBRACE_T, LBRACE_TS, LBRACKET, LE, LEAD, LEADING, LEFT, LENGTH, LETTER, LEVEL, LIBRARY, LIKE, LIKE_REGEX, LIMIT, LN, LOCAL, LOCALTIME, LOCALTIMESTAMP, LOCATOR, LOWER, LPAREN, LT, M, MAP, MATCH, MATCH_NUMBER, MATCH_RECOGNIZE, MATCHED, MATCHES, MAX, MAXVALUE, MEASURES, MEMBER, MERGE, MESSAGE_LENGTH, MESSAGE_OCTET_LENGTH, MESSAGE_TEXT, METADATA, METHOD, MICROSECOND, MILLENNIUM, MILLISECOND, MIN, MINUS, MINUTE, MINUTES, MINVALUE, MOD, MODIFIES, MODULE, MONDAY, MONTH, MONTHS, MORE_, MULTI_LINE_COMMENT, MULTISET, MUMPS, NAME, NAMED_ARGUMENT_ASSIGNMENT, NAMES, NANOSECOND, NATIONAL, NATURAL, NCHAR, NCLOB, NE, NE2, NESTING, NEW, NEXT, NO, NONE, NORMALIZE, NORMALIZED, NOT, NTH_VALUE, NTILE, NULL, NULLABLE, NULLIF, NULLS, NUMBER, NUMERIC, OBJECT, OCCURRENCES_REGEX, OCTET_LENGTH, OCTETS, OF, OFFSET, OLD, OMIT, ON, ONE, ONLY, OPEN, OPTION, OPTIONS, OR, ORDER, ORDERING, ORDINALITY, OTHERS, OUT, OUTER, OUTPUT, OVER, OVERLAPS, OVERLAY, OVERRIDING, PAD, PARAMETER, PARAMETER_MODE, PARAMETER_NAME, PARAMETER_ORDINAL_POSITION, PARAMETER_SPECIFIC_CATALOG, PARAMETER_SPECIFIC_NAME, PARAMETER_SPECIFIC_SCHEMA, PARTIAL, PARTITION, PASCAL, PASSING, PASSTHROUGH, PAST, PATH, PATTERN, PER, PERCENT, PERCENT_RANK, PERCENT_REMAINDER, PERCENTILE_CONT, PERCENTILE_DISC, PERIOD, PERMUTE, PIVOT, PLACING, PLAN, PLI, PLUS, PORTION, POSITION, POSITION_REGEX, POWER, PRECEDES, PRECEDING, PRECISION, PREFIXED_STRING_LITERAL, PREPARE, PRESERVE, PREV, PRIMARY, PRIOR, PRIVILEGES, PROCEDURE, PROPERTIES, PUBLIC, QUALIFY, QUARTER, QUARTERS, QUOTE, QUOTED_IDENTIFIER, QUOTED_STRING, RANGE, RANK, RBRACE, RBRACKET, READ, READS, REAL, RECURSIVE, REF, REFERENCES, REFERENCING, REFRESH, REGR_AVGX, REGR_AVGY, REGR_COUNT, REGR_INTERCEPT, REGR_R2, REGR_SLOPE, REGR_SXX, REGR_SXY, REGR_SYY, RELATIVE, RELEASE, REMOVE, REPEATABLE, REPLACE, RESET, RESPECT, RESTART, RESTRICT, RESULT, RETURN, RETURNED_CARDINALITY, RETURNED_LENGTH, RETURNED_OCTET_LENGTH, RETURNED_SQLSTATE, RETURNING, RETURNS, REVOKE, RIGHT, RLIKE, ROLE, ROLLBACK, ROLLUP, ROUTINE, ROUTINE_CATALOG, ROUTINE_NAME, ROUTINE_SCHEMA, ROW, ROW_COUNT, ROW_NUMBER, ROWS, RPAREN, RUNNING, SAMPLE, SATURDAY, SAVEPOINT, SCALAR, SCALE, SCH, SCH_LOAD, SCH_NUM, SCH_PAREN_STRING, SCHEMA, SCHEMA_NAME, SCHEMAS, SCOPE, SCOPE_CATALOGS, SCOPE_NAME, SCOPE_SCHEMA, SCROLL, SEARCH, SECOND, SECONDS, SECTION, SECURITY, SEEK, SELECT, SELF, SEMICOLON, SENSITIVE, SEPARATOR, SEQUENCE, SERIALIZABLE, SERVER, SERVER_NAME, SESSION, SESSION_USER, SET, SET_MINUS, SETS, SHOW, SIMILAR, SIMPLE, SINGLE_LINE_COMMENT, SIZE, SKIP_, SLASH, SMALLINT, SOME, SOURCE, SPACE, SPECIFIC, SPECIFIC_NAME, SPECIFICTYPE, SQL, SQL_BIGINT, SQL_BINARY, SQL_BIT, SQL_BLOB, SQL_BOOLEAN, SQL_CHAR, SQL_CLOB, SQL_DATE, SQL_DECIMAL, SQL_DOUBLE, SQL_FLOAT, SQL_INTEGER, SQL_INTERVAL_DAY, SQL_INTERVAL_DAY_TO_HOUR, SQL_INTERVAL_DAY_TO_MINUTE, SQL_INTERVAL_DAY_TO_SECOND, SQL_INTERVAL_HOUR, SQL_INTERVAL_HOUR_TO_MINUTE, SQL_INTERVAL_HOUR_TO_SECOND, SQL_INTERVAL_MINUTE, SQL_INTERVAL_MINUTE_TO_SECOND, SQL_INTERVAL_MONTH, SQL_INTERVAL_SECOND, SQL_INTERVAL_YEAR, SQL_INTERVAL_YEAR_TO_MONTH, SQL_LONGVARBINARY, SQL_LONGVARCHAR, SQL_LONGVARNCHAR, SQL_NCHAR, SQL_NCLOB, SQL_NUMERIC, SQL_NVARCHAR, SQL_REAL, SQL_SMALLINT, SQL_TIME, SQL_TIMESTAMP, SQL_TINYINT, SQL_TSI_DAY, SQL_TSI_FRAC_SECOND, SQL_TSI_HOUR, SQL_TSI_MICROSECOND, SQL_TSI_MINUTE, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_SECOND, SQL_TSI_WEEK, SQL_TSI_YEAR, SQL_VARBINARY, SQL_VARCHAR, SQLEXCEPTION, SQLSTATE, SQLWARNING, SQRT, STAR, START, STATE, STATEMENT, STATIC, STATISTICS, STDDEV_POP, STDDEV_SAMP, STORAGE, STREAM, STRING_AGG, STRUCTURE, STYLE, SUBCLASS_ORIGIN, SUBMULTISET, SUBSET, SUBSTITUTE, SUBSTRING, SUBSTRING_REGEX, SUCCEEDS, SUM, SUNDAY, SYMMETRIC, SYSTEM, SYSTEM_TIME, SYSTEM_USER, TABLE, TABLE_NAME, TABLES, TABLESAMPLE, TEMPORARY, THEN, THURSDAY, TIES, TIME, TIME_DIFF, TIME_TRUNC, TIMESTAMP, TIMESTAMP_DIFF, TIMESTAMP_TRUNC, TIMESTAMPADD, TIMESTAMPDIFF, TIMEZONE_HOUR, TIMEZONE_MINUTE, TINYINT, TO, tokenImage, TOP_LEVEL_COUNT, TRAILING, TRANSACTION, TRANSACTIONS_ACTIVE, TRANSACTIONS_COMMITTED, TRANSACTIONS_ROLLED_BACK, TRANSFORM, TRANSFORMS, TRANSLATE, TRANSLATE_REGEX, TRANSLATION, TREAT, TRIGGER, TRIGGER_CATALOG, TRIGGER_NAME, TRIGGER_SCHEMA, TRIM, TRIM_ARRAY, TRUE, TRUNCATE, TUESDAY, TUMBLE, TYPE, UESCAPE, UNBOUNDED, UNCOMMITTED, UNCONDITIONAL, UNDER, UNICODE_QUOTED_ESCAPE_CHAR, UNICODE_QUOTED_IDENTIFIER, UNICODE_STRING_LITERAL, UNION, UNIQUE, UNKNOWN, UNNAMED, UNNEST, UNPIVOT, UNSIGNED_INTEGER_LITERAL, UPDATE, UPPER, UPSERT, USAGE, USE, USER, USER_DEFINED_TYPE_CATALOG, USER_DEFINED_TYPE_CODE, USER_DEFINED_TYPE_NAME, USER_DEFINED_TYPE_SCHEMA, USING, UTF16, UTF32, UTF8, VALUE, VALUE_OF, VALUES, VAR_POP, VAR_SAMP, VARBINARY, VARCHAR, VARYING, VERSION, VERSIONING, VERTICAL_BAR, VIEW, WEDNESDAY, WEEK, WEEKS, WHEN, WHENEVER, WHERE, WHITESPACE, WIDTH_BUCKET, WINDOW, WITH, WITHIN, WITHOUT, WORK, WRAPPER, WRITE, XML, YEAR, YEARS, ZONE
-
Constructor Summary
ConstructorDescriptionDrillParserImpl
(InputStream stream) Constructor with InputStream.DrillParserImpl
(InputStream stream, String encoding) Constructor with InputStream and supplied encodingDrillParserImpl
(Reader stream) Constructor.Constructor with generated Token Manager. -
Method Summary
Modifier and TypeMethodDescriptionfinal void
AddArg
(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final void
AddArg0
(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final void
AddColumnType
(List<org.apache.calcite.sql.SqlNode> list) final void
AddCompoundIdentifierType
(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) Parses a compound identifier with optional type.final void
AddCompoundIdentifierTypeCommaList
(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) Parses a comma-separated list of compound identifiers.final void
AddExpression
(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) AsExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext)
but appends to a list.final void
AddExpression2b
(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final void
AddExpressions
(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a list of expressions separated by commas, appending expressions to a given list.final void
AddFieldNameType
(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes) final void
AddFieldNameTypes
(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes) Parse a "name1 type1 [NULL | NOT NULL], name2 type2 [NULL | NOT NULL] ..." list, the field type default is not nullable.final void
AddGroupingElement
(List<org.apache.calcite.sql.SqlNode> list) final void
final void
AddIdentifierSegment
(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) Parses one segment of an identifier that may be composite.final void
AddKeyValueOption
(List<org.apache.calcite.sql.SqlNode> list) Parses an option with format key=val whose key is a simple identifier or string literal and value is a string literal.final void
AddMeasureColumn
(List<org.apache.calcite.sql.SqlNode> list) final void
AddOptionValue
(List<org.apache.calcite.sql.SqlNode> list) Parses an option value (either a string or a numeric) and adds to a list.final void
AddOrderItem
(List<org.apache.calcite.sql.SqlNode> list) Parses one item in an ORDER BY clause, and adds it to a list.final void
AddPivotAgg
(List<org.apache.calcite.sql.SqlNode> list) final void
AddPivotValue
(List<org.apache.calcite.sql.SqlNode> list) final void
addProperty
(org.apache.calcite.sql.SqlNodeList properties) Helper method to add string literals divided by equals into SqlNodeList.final void
AddRowConstructor
(List<org.apache.calcite.sql.SqlNode> list) Parses a row constructor and adds it to a list.final void
AddSelectItem
(List<org.apache.calcite.sql.SqlNode> list) Parses one item in a select list.final void
AddSetOpQuery
(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a set operator (e.g.final void
AddSetOpQueryOrExpr
(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a set operator (e.g.final void
AddSimpleIdentifiers
(List<org.apache.calcite.sql.SqlNode> list) Parses a comma-separated list of simple identifiers.final void
AddSubsetDefinition
(List<org.apache.calcite.sql.SqlNode> list) final void
AddTableIdentifierSegment
(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) AsAddIdentifierSegment(java.util.List<java.lang.String>, java.util.List<org.apache.calcite.sql.parser.SqlParserPos>)
but part of a table name (for example, followingFROM
,INSERT
orUPDATE
).final void
AddUnpivotValue
(List<org.apache.calcite.sql.SqlNode> list) final void
AddWindowSpec
(List<org.apache.calcite.sql.SqlNode> list) final void
AddWithItem
(List<org.apache.calcite.sql.SqlWithItem> list) final org.apache.calcite.sql.SqlLiteral
final org.apache.calcite.sql.SqlNode
Parses an ARRAY constructorfinal org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNode
Parses an atomic row expression.final org.apache.calcite.sql.SqlBinaryOperator
Parses a binary multiset operator.final org.apache.calcite.sql.SqlBinaryOperator
Parses a binary query operator like UNION.final org.apache.calcite.sql.SqlBinaryOperator
Parses a binary row operator like AND.final org.apache.calcite.sql.SqlNode
Parses a call to a builtin function with special syntax.final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlTypeNameSpec
CharacterTypeName
(org.apache.calcite.sql.parser.Span s) Parse character types: char, varchar.final org.apache.calcite.sql.SqlCollation
Parses a COLLATE clausefinal org.apache.calcite.sql.SqlTypeNameSpec
CollectionsTypeName
(org.apache.calcite.sql.SqlTypeNameSpec elementTypeName) Parse a collection type name, the input element type name may also be a collection type.final org.apache.calcite.sql.SqlKind
comp()
Parses a comparison operator inside a SOME / ALL predicate.final org.apache.calcite.sql.SqlIdentifier
Parses a Drill compound identifier.final org.apache.calcite.sql.SqlIdentifier
Parses a compound identifier in the FROM clause.final org.apache.calcite.sql.SqlIdentifier
final org.apache.calcite.sql.SqlNode
CreateSetSemanticsTableIfNeeded
(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode e, org.apache.calcite.sql.SqlNodeList partitionList, org.apache.calcite.sql.SqlNodeList orderList) final org.apache.calcite.sql.SqlNode
CursorExpression
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a CURSOR(query) expression.final org.apache.calcite.sql.SqlDataTypeSpec
DataType()
final org.apache.calcite.sql.SqlNode
Parses a Date/Time constructor function, for example "DATE(1969, 7, 21)" or "DATETIME(d, t)".final org.apache.calcite.sql.SqlLiteral
Parses a date/time literal.final org.apache.calcite.sql.SqlTypeNameSpec
Parse datetime types: date, time, timestamp.final org.apache.calcite.sql.SqlCall
Parses a call to DATE_TRUNC.final org.apache.calcite.avatica.util.TimeUnit
Day()
final org.apache.calcite.sql.SqlNode
Default()
final void
Disable tracing.final DrillSqlResetOption
DrillSqlResetOption
(org.apache.calcite.sql.parser.Span s, String scope) Parses a RESET statement without a leading "ALTER": RESET { | ALL } final DrillSqlSetOption
DrillSqlSetOption
(org.apache.calcite.sql.parser.Span s, String scope) Parses a SET statement without a leading "ALTER": SET <NAME> [ = VALUE ] final org.apache.calcite.sql.SqlDynamicParam
Parses a dynamic parameter marker.final void
Enable tracing.final org.apache.calcite.sql.SqlExplain.Depth
Parses WITH TYPE | WITH IMPLEMENTATION | WITHOUT IMPLEMENTATION modifier for EXPLAIN PLAN.final org.apache.calcite.sql.SqlExplainLevel
Parses INCLUDING ALL ATTRIBUTES modifier for EXPLAIN PLAN.final org.apache.calcite.sql.SqlNode
ExplicitTable
(org.apache.calcite.sql.parser.SqlParserPos pos) Parses an explicit TABLE t reference.final org.apache.calcite.sql.SqlNode
Expression
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a row expression or a parenthesized expression of any kind.Expression2
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a binary row expression, or a parenthesized expression of any kind.final org.apache.calcite.sql.SqlNode
Expression3
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a unary row expression, or a parenthesized expression of any kind.final org.apache.calcite.sql.SqlNodeList
ExpressionCommaList
(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a list of expressions separated by commas.final org.apache.calcite.sql.SqlNode
ExprOrJoinOrOrderedQuery
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Syntactical Descriptions *final org.apache.calcite.sql.SqlNode
Allows parser to be extended with new types of table references.final org.apache.calcite.sql.SqlNodeList
final org.apache.calcite.sql.SqlNode
ExtendTable
(org.apache.calcite.sql.SqlNode tableRef) Wraps a table reference in a call to EXTEND if an optional "EXTEND" clause is present.final void
FetchClause
(org.apache.calcite.sql.SqlNode[] offsetFetch) Parses a FETCH clause in an ORDER BY expression.final org.apache.calcite.sql.SqlNode
FloorCeilOptions
(org.apache.calcite.sql.parser.Span s, boolean floorFlag) final org.apache.calcite.sql.SqlNode
Parses the FROM clause for a SELECT.final org.apache.calcite.sql.SqlIdentifier
Parses the name of a function (either a compound identifier or a reserved word which can be used as a function name).final List<org.apache.calcite.sql.SqlNode>
FunctionParameterList
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses function parameter lists including DISTINCT keyword recognition, DEFAULT, and named argument assignment.Generate ParseException.org.apache.calcite.sql.parser.SqlAbstractParserImpl.Metadata
final Token
Get the next Token.protected org.apache.calcite.sql.parser.SqlParserPos
getPos()
final Token
getToken
(int index) Get the specific Token.final org.apache.calcite.sql.SqlNodeList
GroupBy()
Parses a GROUP BY clause for SELECT.final org.apache.calcite.sql.SqlCall
Parses a call to a grouping function inside the GROUP BY clause, for exampleTUMBLE(rowtime, INTERVAL '1' MINUTE)
.final List<org.apache.calcite.sql.SqlNode>
final org.apache.calcite.sql.SqlNode
Having()
Parses a HAVING clause for SELECT.final org.apache.calcite.avatica.util.TimeUnit
Hour()
final String
Parses a simple identifier as a String.final org.apache.calcite.sql.SqlLiteral
Parses an interval literal.final org.apache.calcite.sql.SqlNode
Parses an interval literal (e.g.final org.apache.calcite.sql.SqlIntervalQualifier
final org.apache.calcite.sql.SqlIntervalQualifier
Interval qualifier without 'TO unit'.final int
final org.apache.calcite.sql.SqlNode
Parses a function call expression with JDBC syntax.final org.apache.calcite.sql.SqlLiteral
final org.apache.calcite.sql.SqlJdbcDataTypeName
final org.apache.calcite.sql.SqlNode
Join()
final org.apache.calcite.sql.SqlNode
JoinTable
(org.apache.calcite.sql.SqlNode e) Matches "LEFT JOIN t ON ...", "RIGHT JOIN t USING ...", "JOIN t".final org.apache.calcite.sql.SqlLiteral
JoinType()
final List<org.apache.calcite.sql.SqlNode>
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNodeList
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlJsonExistsErrorBehavior
final org.apache.calcite.sql.SqlCall
final void
final org.apache.calcite.sql.SqlNode
JsonName()
final List<org.apache.calcite.sql.SqlNode>
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlDataTypeSpec
final org.apache.calcite.sql.SqlNode
final List<org.apache.calcite.sql.SqlNode>
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlJsonEncoding
final org.apache.calcite.sql.SqlDataTypeSpec
final List<org.apache.calcite.sql.SqlNode>
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNode
LeafQuery
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a leaf in a query expression (SELECT, VALUES or TABLE).final org.apache.calcite.sql.SqlNode
LeafQueryOrExpr
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses either a row expression, a leaf query expression, or a parenthesized expression of any kind.final void
LimitClause
(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode[] offsetFetch) Parses a LIMIT clause in an ORDER BY expression.final org.apache.calcite.sql.SqlNode
Literal()
Parses a literal expression, allowing continued string literals.final org.apache.calcite.sql.SqlNode
Parses a literal or an interval expression.final org.apache.calcite.sql.SqlNode
Parses a MAP constructorfinal org.apache.calcite.sql.SqlMatchRecognize
MatchRecognize
(org.apache.calcite.sql.SqlNode tableRef) Parses a MATCH_RECOGNIZE clause following a table expression.final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNodeList
MeasureColumnCommaList
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.avatica.util.TimeUnit
Minute()
final org.apache.calcite.avatica.util.TimeUnit
Month()
final org.apache.calcite.sql.SqlNode
Parses a MULTISET constructorfinal org.apache.calcite.sql.SqlCall
final org.apache.calcite.sql.SqlNode
Parses a call to a named function (could be a builtin with regular syntax, or else a UDF).final org.apache.calcite.sql.SqlNode
NamedRoutineCall
(org.apache.calcite.sql.SqlFunctionCategory routineType, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final org.apache.calcite.sql.SqlLiteral
Natural()
final org.apache.calcite.sql.SqlNode
Parses a NEW UDT(...) expression.final org.apache.calcite.sql.SqlNode
Parses a literal that is not an interval literal.final String
Parses the name of a JDBC function that is a token but is not reserved.final String
Parses a non-reserved keyword for use as an identifier.final void
final void
final void
org.apache.calcite.sql.parser.SqlParseException
final boolean
Parses NOT NULL and returns false, or parses nothing and returns true.final boolean
Parse a nullable option, default is false.final boolean
Parse a nullable option, default is true.final org.apache.calcite.sql.SqlCall
nullTreatment
(org.apache.calcite.sql.SqlCall arg) final org.apache.calcite.util.Pair<org.apache.calcite.sql.parser.SqlParserPos,
org.apache.calcite.sql.SqlOperator> final org.apache.calcite.sql.SqlLiteral
Parses a numeric literal (can be signed)final void
OffsetClause
(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode[] offsetFetch) Parses an OFFSET clause in an ORDER BY expression.final org.apache.calcite.sql.SqlNodeList
OrderBy
(boolean accept) Parses an ORDER BY clause.final org.apache.calcite.sql.SqlNode
OrderByLimitOpt
(org.apache.calcite.sql.SqlNode e) Reads optional "ORDER BY", "LIMIT", "OFFSET", "FETCH" following a query,e
.final org.apache.calcite.sql.SqlNodeList
final org.apache.calcite.sql.SqlNode
OrderedQueryOrExpr
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses either a row expression or a query expression with an optional ORDER BY.final org.apache.calcite.sql.SqlNode
Over
(org.apache.calcite.sql.SqlNode tableRef) Wraps a table reference in a call to OVER if an optional "OVER" clause is present (if the dialect supports OVER for table expressions).final org.apache.calcite.util.Pair<org.apache.calcite.sql.SqlNodeList,
org.apache.calcite.sql.SqlNodeList> List of compound identifiers in parentheses.final org.apache.calcite.sql.SqlNode
ParenthesizedExpression
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a parenthesized query or single row expression.final org.apache.calcite.sql.SqlNodeList
final org.apache.calcite.sql.SqlNodeList
Parses a literal list separated by comma.final org.apache.calcite.sql.SqlNodeList
ParenthesizedQueryOrCommaList
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses a parenthesized query or comma-list of row expressions.final org.apache.calcite.sql.SqlNodeList
ParenthesizedQueryOrCommaListWithDefault
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) As ParenthesizedQueryOrCommaList, but allows DEFAULT in place of any of the expressions.final org.apache.calcite.sql.SqlNodeList
List of simple identifiers in parentheses.org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNodeList
ParseOptionalFieldList
(String relType) Parses an optional field list and makes sure no field is a "*".final org.apache.calcite.sql.SqlNodeList
ParseRequiredFieldList
(String relType) Parses a required field list and makes sure no field is a "*".final org.apache.calcite.sql.SqlCharStringLiteral
org.apache.calcite.sql.SqlNode
org.apache.calcite.sql.SqlNode
org.apache.calcite.sql.SqlNodeList
final org.apache.calcite.sql.SqlNode
PartitionedByAndOrderBy
(org.apache.calcite.sql.SqlNode e) final org.apache.calcite.sql.SqlNode
PartitionedQueryOrQueryOrExpr
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNodeList
PatternDefinitionCommaList
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
Parses a PERIOD constructorfinal org.apache.calcite.sql.SqlOperator
final org.apache.calcite.sql.SqlNode
Pivot
(org.apache.calcite.sql.SqlNode tableRef) Parses a PIVOT clause following a table expression.final org.apache.calcite.sql.SqlPostfixOperator
Parses a postfix row operator like IS NOT NULL.final int
final org.apache.calcite.sql.SqlPrefixOperator
Parses a prefix row operator like NOT.final org.apache.calcite.sql.SqlNode
Qualify()
Parses a QUALIFY clause for SELECT.final org.apache.calcite.avatica.util.TimeUnit
Quarter()
final org.apache.calcite.sql.SqlNode
Query
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final org.apache.calcite.sql.SqlNode
QueryOrExpr
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses either a row expression or a query expression without ORDER BY.void
ReInit
(InputStream stream) Reinitialise.void
ReInit
(InputStream stream, String encoding) Reinitialise.void
Reinitialise.void
Reinitialise.final org.apache.calcite.sql.SqlIdentifier
Parses a reserved word which is used as the name of a function.final org.apache.calcite.sql.SqlNode
Parses a row constructor in the context of a VALUES expression.final org.apache.calcite.sql.SqlNode
Parses a row expression extension, it can be either an identifier, or a call to a named function.final org.apache.calcite.sql.SqlTypeNameSpec
Parse Row type with format: Row(name1 type1, name2 type2).final String
Scope()
final org.apache.calcite.avatica.util.TimeUnit
Second()
final org.apache.calcite.sql.SqlNode
Parses one unaliased expression in a select list.final org.apache.calcite.sql.SqlCall
void
setConformance
(org.apache.calcite.sql.validate.SqlConformance conformance) void
setIdentifierMaxLength
(int identifierMaxLength) void
setQuotedCasing
(org.apache.calcite.avatica.util.Casing quotedCasing) void
setTabSize
(int tabSize) void
setUnquotedCasing
(org.apache.calcite.avatica.util.Casing unquotedCasing) final org.apache.calcite.sql.SqlIdentifier
Parses a simple identifier as an SqlIdentifier.final org.apache.calcite.sql.SqlIdentifier
Parses a character literal as an SqlIdentifier.final org.apache.calcite.sql.SqlNodeList
List of simple identifiers in parentheses or one simple identifier.final String
Parses a character literal.final org.apache.calcite.sql.SqlSnapshot
Snapshot
(org.apache.calcite.sql.SqlNode tableRef) Parses a FOR SYSTEM_TIME clause following a table expression.final org.apache.calcite.sql.SqlLiteral
Parse a special literal keywordfinal org.apache.calcite.sql.SqlAlter
SqlAlter()
Parses an expression for setting or resetting an option in SQL, such as QUOTED_IDENTIFIERS, or explain plan level (physical/logical).final org.apache.calcite.sql.SqlNode
Parses ALTER SCHEMA statements: ALTER SCHEMA (FOR TABLE dfs.tmp.nation | PATH '/tmp/schema.json') ADD [OR REPLACE] [COLUMNS (col1 int, col2 varchar)] [PROPERTIES ('prop1'='val1', 'prop2'='val2')] ALTER SCHEMA (FOR TABLE dfs.tmp.nation | PATH '/tmp/schema.json') REMOVE [COLUMNS (`col1`, `col2`)] [PROPERTIES ('prop1', 'prop2')]final org.apache.calcite.sql.SqlNode
SqlAlterSchemaAdd
(org.apache.calcite.sql.parser.SqlParserPos pos, org.apache.calcite.sql.SqlIdentifier table, org.apache.calcite.sql.SqlNode path) final org.apache.calcite.sql.SqlNode
SqlAlterSchemaRemove
(org.apache.calcite.sql.parser.SqlParserPos pos, org.apache.calcite.sql.SqlIdentifier table, org.apache.calcite.sql.SqlNode path) final org.apache.calcite.sql.SqlNode
Parses a analyze statements: ANALYZE TABLE [table_name | table({table function name}(parameters))] [COLUMNS {(col1, col2, ...) | NONE}] REFRESH METADATA ['level' LEVEL] [{COMPUTE | ESTIMATE} | STATISTICS [ SAMPLE number PERCENT ]] ANALYZE TABLE [table_name] DROP [METADATA|STATISTICS] [IF EXISTS] ANALYZE TABLE [table_name | table({table function name}(parameters))] {COMPUTE | ESTIMATE} | STATISTICS [(column1, column2, ...)] [ SAMPLE numeric PERCENT ]final org.apache.calcite.sql.SqlNode
SqlCreateAlias
(org.apache.calcite.sql.parser.SqlParserPos pos, boolean replace, boolean isPublic) Parses CREATE ALIAS statement CREATE [OR REPLACE] [PUBLIC] ALIAS `alias` FOR [TABLE | STORAGE] `table/storage` [AS USER 'username']final org.apache.calcite.sql.SqlNode
Parse create UDF statement CREATE FUNCTION USING JAR 'jar_name'final org.apache.calcite.sql.SqlNode
Parses CREATE [OR REPLACE] command for VIEW, TABLE or SCHEMA.final org.apache.calcite.sql.SqlNode
SqlCreateSchema
(org.apache.calcite.sql.parser.SqlParserPos pos, String createType) Parses create table schema statement after CREATE OR REPLACE SCHEMA statement which is handled in the SqlCreateOrReplace method.final org.apache.calcite.sql.SqlNode
SqlCreateTable
(org.apache.calcite.sql.parser.SqlParserPos pos, boolean isTemporary) Parses a CTAS or CTTAS statement after CREATE [TEMPORARY] TABLE statement which is handled in the SqlCreateOrReplace method.final org.apache.calcite.sql.SqlNode
SqlCreateView
(org.apache.calcite.sql.parser.SqlParserPos pos, String createType) Parses a create view or replace existing view statement.final org.apache.calcite.sql.SqlNode
Parses a DELETE statement.final org.apache.calcite.sql.SqlNode
Parses a DESCRIBE statement.final org.apache.calcite.sql.SqlNode
Parses statement { DESCRIBE | DESC } { SCHEMA | DATABASE } name { DESCRIBE | DESC } SCHEMA FOR TABLE dfs.my_table [AS (JSON | STATEMENT)]final org.apache.calcite.sql.SqlNode
Parses statement { DESCRIBE | DESC } [TABLE] tblname [col_name | wildcard ]final org.apache.calcite.sql.SqlNode
SqlDrop()
Parses DROP command for VIEW, TABLE and SCHEMA.final org.apache.calcite.sql.SqlNode
Parses DROP ALIAS statement DROP [PUBLIC] ALIAS [IF EXISTS] `employee-alias` [FOR (TABLE | STORAGE)] [AS USER 'username']final org.apache.calcite.sql.SqlNode
Parses DROP ALL ALIASES statement DROP ALL [PUBLIC] ALIASES [FOR (TABLE | STORAGE)] [AS USER 'username']final org.apache.calcite.sql.SqlNode
Parse drop UDF statement DROP FUNCTION USING JAR 'jar_name'final org.apache.calcite.sql.SqlNode
SqlDropSchema
(org.apache.calcite.sql.parser.SqlParserPos pos) Parses drop schema or drop schema if exists statement after DROP SCHEMA statement which is handled in SqlDrop method.final org.apache.calcite.sql.SqlNode
SqlDropTable
(org.apache.calcite.sql.parser.SqlParserPos pos) Parses a drop table or drop table if exists statement after DROP TABLE statement which is handled in SqlDrop method.final org.apache.calcite.sql.SqlNode
SqlDropView
(org.apache.calcite.sql.parser.SqlParserPos pos) Parses a drop view or drop view if exists statement after DROP VIEW statement which is handled in SqlDrop method.final org.apache.calcite.sql.SqlNode
Parses an EXPLAIN PLAN statement.final org.apache.calcite.sql.SqlNode
Parses a SQL expression (such as might occur in a WHERE clause) followed by the end-of-file symbol.final org.apache.calcite.sql.SqlNode
Parses an INSERT statement.final void
SqlInsertKeywords
(List<org.apache.calcite.sql.SqlLiteral> keywords) final org.apache.calcite.sql.SqlNode
SqlMerge()
Parses a MERGE statement.final org.apache.calcite.sql.SqlNode
Parses a CALL statement.final org.apache.calcite.sql.SqlNode
Parses a query (SELECT, UNION, INTERSECT, EXCEPT, VALUES, TABLE) followed by the end-of-file symbol.final org.apache.calcite.sql.SqlNode
Parses a query (SELECT or VALUES) or DML statement (INSERT, UPDATE, DELETE, MERGE).final org.apache.calcite.sql.SqlNode
Parse refresh table metadata statement.final org.apache.calcite.sql.SqlSelect
Parses a leaf SELECT expression without ORDER BY.final void
SqlSelectKeywords
(List<org.apache.calcite.sql.SqlLiteral> keywords) final org.apache.calcite.sql.SqlSetOption
SqlSetOption
(org.apache.calcite.sql.parser.Span s, String scope) Parses "SET <NAME> = VALUE" or "RESET <NAME>", without a leading "ALTER <SCOPE>".final org.apache.calcite.sql.SqlNode
Parses statement SHOW FILES [{FROM | IN} schema]final org.apache.calcite.sql.SqlNode
Parses statement SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr]final org.apache.calcite.sql.SqlNode
Parses statement SHOW TABLES [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr]final org.apache.calcite.sql.SqlNode
SqlStmt()
Parses an SQL statement.final org.apache.calcite.sql.SqlNode
Parses an SQL statement followed by the end-of-file symbol.final org.apache.calcite.sql.SqlNodeList
Parses a list of SQL statements separated by semicolon.final org.apache.calcite.sql.SqlTypeNameSpec
SqlTypeName
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.sql.SqlTypeNameSpec
SqlTypeName1
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.sql.SqlTypeNameSpec
SqlTypeName2
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.sql.SqlTypeNameSpec
SqlTypeName3
(org.apache.calcite.sql.parser.Span s) final org.apache.calcite.sql.SqlNode
Parses an UPDATE statement.final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
StandardFloorCeilOptions
(org.apache.calcite.sql.parser.Span s, boolean floorFlag) final org.apache.calcite.sql.SqlCall
Parses a call to the STRING_AGG aggregate function (or to an aggregate function with similar syntax: ARRAY_AGG, ARRAY_CONCAT_AGG, GROUP_CONCAT).final org.apache.calcite.sql.SqlNode
Parses a string literal.final org.apache.calcite.sql.SqlNodeList
SubsetDefinitionCommaList
(org.apache.calcite.sql.parser.Span s) void
switchTo
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState state) final org.apache.calcite.sql.SqlNode
Parses a VALUES leaf query expression.final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlNode
TableHints
(org.apache.calcite.sql.SqlIdentifier tableName) Parses hints following a table reference, and returns the wrapped table reference.final org.apache.calcite.sql.SqlNode
Allows an OVER clause following a table expression as an extension to standard SQL syntax.final org.apache.calcite.sql.SqlNode
Table parameter of a table function.final org.apache.calcite.sql.SqlNode
TableRef()
Parses a table reference in a FROM clause, not lateral unless LATERAL is explicitly specified.final org.apache.calcite.sql.SqlNode
TableRef1
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) final org.apache.calcite.sql.SqlNode
TableRef2
(boolean lateral) Parses a table reference in a FROM clause.final org.apache.calcite.sql.SqlNode
TableRef3
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext, boolean lateral) final org.apache.calcite.sql.SqlNode
Tablesample
(org.apache.calcite.sql.SqlNode tableRef) final org.apache.calcite.sql.SqlCall
Parses a call to BigQuery's TIME_DIFF.final org.apache.calcite.sql.SqlCall
Parses a call to TIMESTAMPADD.final org.apache.calcite.sql.SqlCall
Parses a call to BigQuery's TIMESTAMP_DIFF.final org.apache.calcite.sql.SqlCall
Parses a call to TIMESTAMPDIFF.final org.apache.calcite.sql.SqlCall
Parses a call to TIMESTAMP_TRUNC.final org.apache.calcite.sql.SqlCall
Parses a call to TIME_TRUNC.final org.apache.calcite.sql.SqlIntervalQualifier
TimeUnit()
Parses a built-in time unit (e.g.final org.apache.calcite.sql.SqlIntervalQualifier
Parses a built-in time unit (e.g.final boolean
Parse a time zone suffix for DateTime types.final org.apache.calcite.sql.SqlTypeNameSpec
TypeName()
final org.apache.calcite.sql.SqlNode
Unpivot
(org.apache.calcite.sql.SqlNode tableRef) Parses an UNPIVOT clause following a table expression.final List<org.apache.calcite.sql.SqlNode>
UnquantifiedFunctionParameterList
(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) Parses function parameter lists.final int
final org.apache.calcite.sql.SqlNumericLiteral
Parses a unsigned numeric literalfinal org.apache.calcite.sql.SqlNode
Numeric literal or parameter; used in LIMIT, OFFSET and FETCH clauses.final void
Defines a production which can never be accepted by the parser.final org.apache.calcite.avatica.util.TimeUnit
Week()
final String
final org.apache.calcite.sql.SqlUpdate
WhenMatchedClause
(org.apache.calcite.sql.SqlNode table, org.apache.calcite.sql.SqlIdentifier alias) final org.apache.calcite.sql.SqlInsert
WhenNotMatchedClause
(org.apache.calcite.sql.SqlNode table) final org.apache.calcite.sql.SqlNode
Where()
Parses a WHERE clause for SELECT, DELETE, and UPDATE.final org.apache.calcite.sql.SqlNodeList
Window()
Parses a WINDOW clause for SELECT.final org.apache.calcite.sql.SqlNode
final org.apache.calcite.sql.SqlWindow
Parses a window specification.final org.apache.calcite.sql.SqlCall
withinDistinct
(org.apache.calcite.sql.SqlNode arg) final org.apache.calcite.sql.SqlCall
withinGroup
(org.apache.calcite.sql.SqlNode arg) final org.apache.calcite.sql.SqlNodeList
WithList()
final org.apache.calcite.avatica.util.TimeUnit
Year()
Methods inherited from class org.apache.calcite.sql.parser.SqlAbstractParserImpl
createCall, createCall, getOriginalSql, getSql92ReservedWords, setOriginalSql, setTimeUnitCodes
-
Field Details
-
FACTORY
public static final org.apache.calcite.sql.parser.SqlParserImplFactory FACTORYSqlParserImplFactory
implementation for creating parser. -
token_source
Generated Token Manager. -
token
Current token. -
jj_nt
Next token.
-
-
Constructor Details
-
DrillParserImpl
Constructor with InputStream. -
DrillParserImpl
Constructor with InputStream and supplied encoding -
DrillParserImpl
Constructor. -
DrillParserImpl
Constructor with generated Token Manager.
-
-
Method Details
-
normalizeException
- Specified by:
normalizeException
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
getMetadata
public org.apache.calcite.sql.parser.SqlAbstractParserImpl.Metadata getMetadata()- Specified by:
getMetadata
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setTabSize
public void setTabSize(int tabSize) - Specified by:
setTabSize
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
switchTo
public void switchTo(org.apache.calcite.sql.parser.SqlAbstractParserImpl.LexicalState state) - Specified by:
switchTo
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setQuotedCasing
public void setQuotedCasing(org.apache.calcite.avatica.util.Casing quotedCasing) - Specified by:
setQuotedCasing
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setUnquotedCasing
public void setUnquotedCasing(org.apache.calcite.avatica.util.Casing unquotedCasing) - Specified by:
setUnquotedCasing
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setIdentifierMaxLength
public void setIdentifierMaxLength(int identifierMaxLength) - Specified by:
setIdentifierMaxLength
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
setConformance
public void setConformance(org.apache.calcite.sql.validate.SqlConformance conformance) - Specified by:
setConformance
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
parseSqlExpressionEof
- Specified by:
parseSqlExpressionEof
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
- Throws:
Exception
-
parseSqlStmtEof
- Specified by:
parseSqlStmtEof
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
- Throws:
Exception
-
parseSqlStmtList
- Specified by:
parseSqlStmtList
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
- Throws:
Exception
-
parseArray
public org.apache.calcite.sql.SqlNode parseArray() throws org.apache.calcite.sql.parser.SqlParseException- Specified by:
parseArray
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
- Throws:
org.apache.calcite.sql.parser.SqlParseException
-
ExtendedTableRef
Allows parser to be extended with new types of table references. The default implementation of this production is empty.- Throws:
ParseException
-
TableOverOpt
Allows an OVER clause following a table expression as an extension to standard SQL syntax. The default implementation of this production is empty.- Throws:
ParseException
-
SqlSelectKeywords
public final void SqlSelectKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords) throws ParseException - Throws:
ParseException
-
SqlInsertKeywords
public final void SqlInsertKeywords(List<org.apache.calcite.sql.SqlLiteral> keywords) throws ParseException - Throws:
ParseException
-
FloorCeilOptions
public final org.apache.calcite.sql.SqlNode FloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag) throws ParseException - Throws:
ParseException
-
getPos
- Specified by:
getPos
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
- Throws:
ParseException
-
ExprOrJoinOrOrderedQuery
public final org.apache.calcite.sql.SqlNode ExprOrJoinOrOrderedQuery(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Syntactical Descriptions *- Throws:
ParseException
-
OrderedQueryOrExpr
public final org.apache.calcite.sql.SqlNode OrderedQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses either a row expression or a query expression with an optional ORDER BY.Postgres syntax for limit:
[ LIMIT { count | ALL } ] [ OFFSET start ]
Trino syntax for limit:
[ OFFSET start ] [ LIMIT { count | ALL } ]
MySQL syntax for limit:
[ LIMIT { count | start, count } ]
SQL:2008 syntax for limit:
[ OFFSET start { ROW | ROWS } ] [ FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY ]
- Throws:
ParseException
-
OrderByLimitOpt
public final org.apache.calcite.sql.SqlNode OrderByLimitOpt(org.apache.calcite.sql.SqlNode e) throws ParseException Reads optional "ORDER BY", "LIMIT", "OFFSET", "FETCH" following a query,e
. If any of them are present, adds them to the query; otherwise returns the query unchanged. Throws if they are present ande
is not a query.- Throws:
ParseException
-
OffsetClause
public final void OffsetClause(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode[] offsetFetch) throws ParseException Parses an OFFSET clause in an ORDER BY expression.- Throws:
ParseException
-
FetchClause
Parses a FETCH clause in an ORDER BY expression.- Throws:
ParseException
-
LimitClause
public final void LimitClause(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode[] offsetFetch) throws ParseException Parses a LIMIT clause in an ORDER BY expression.- Throws:
ParseException
-
LeafQuery
public final org.apache.calcite.sql.SqlNode LeafQuery(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a leaf in a query expression (SELECT, VALUES or TABLE).- Throws:
ParseException
-
ParenthesizedExpression
public final org.apache.calcite.sql.SqlNode ParenthesizedExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a parenthesized query or single row expression. Depending onexprContext
, may also accept a join.- Throws:
ParseException
-
ParenthesizedQueryOrCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedQueryOrCommaList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a parenthesized query or comma-list of row expressions.REVIEW jvs 8-Feb-2004: There's a small hole in this production. It can be used to construct something like
WHERE x IN (select count(*) from t where c=d,5)
which should be illegal. The above is interpreted as equivalent to
WHERE x IN ((select count(*) from t where c=d),5)
which is a legal use of a sub-query. The only way to fix the hole is to be able to remember whether a subexpression was parenthesized or not, which means preserving parentheses in the SqlNode tree. This is probably desirable anyway for use in purely syntactic parsing applications (e.g. SQL pretty-printer). However, if this is done, it's important to also make isA() on the paren node call down to its operand so that we can always correctly discriminate a query from a row expression.
- Throws:
ParseException
-
ParenthesizedQueryOrCommaListWithDefault
public final org.apache.calcite.sql.SqlNodeList ParenthesizedQueryOrCommaListWithDefault(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException As ParenthesizedQueryOrCommaList, but allows DEFAULT in place of any of the expressions. For example,(x, DEFAULT, null, DEFAULT)
.- Throws:
ParseException
-
UnquantifiedFunctionParameterList
public final List<org.apache.calcite.sql.SqlNode> UnquantifiedFunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses function parameter lists. If the list starts with DISTINCT or ALL, it is discarded.- Throws:
ParseException
-
FunctionParameterList
public final List<org.apache.calcite.sql.SqlNode> FunctionParameterList(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses function parameter lists including DISTINCT keyword recognition, DEFAULT, and named argument assignment.- Throws:
ParseException
-
AllOrDistinct
- Throws:
ParseException
-
AddArg0
public final void AddArg0(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
AddArg
public final void AddArg(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
Default
- Throws:
ParseException
-
SqlQueryEof
Parses a query (SELECT, UNION, INTERSECT, EXCEPT, VALUES, TABLE) followed by the end-of-file symbol.- Throws:
ParseException
-
SqlStmtList
Parses a list of SQL statements separated by semicolon. The semicolon is required between statements, but is optional at the end.- Throws:
ParseException
-
SqlStmt
Parses an SQL statement.- Throws:
ParseException
-
SqlStmtEof
Parses an SQL statement followed by the end-of-file symbol.- Throws:
ParseException
-
SqlShowTables
Parses statement SHOW TABLES [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr]- Throws:
ParseException
-
SqlShowFiles
Parses statement SHOW FILES [{FROM | IN} schema]- Throws:
ParseException
-
SqlShowSchemas
Parses statement SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr]- Throws:
ParseException
-
SqlDescribeTable
Parses statement { DESCRIBE | DESC } [TABLE] tblname [col_name | wildcard ]- Throws:
ParseException
-
SqlUseSchema
- Throws:
ParseException
-
ParseOptionalFieldList
public final org.apache.calcite.sql.SqlNodeList ParseOptionalFieldList(String relType) throws ParseException Parses an optional field list and makes sure no field is a "*".- Throws:
ParseException
-
ParseRequiredFieldList
public final org.apache.calcite.sql.SqlNodeList ParseRequiredFieldList(String relType) throws ParseException Parses a required field list and makes sure no field is a "*".- Throws:
ParseException
-
SqlCreateOrReplace
Parses CREATE [OR REPLACE] command for VIEW, TABLE or SCHEMA.- Throws:
ParseException
-
SqlCreateView
public final org.apache.calcite.sql.SqlNode SqlCreateView(org.apache.calcite.sql.parser.SqlParserPos pos, String createType) throws ParseException Parses a create view or replace existing view statement. after CREATE OR REPLACE VIEW statement which is handled in the SqlCreateOrReplace method. CREATE { [OR REPLACE] VIEW | VIEW [IF NOT EXISTS] | VIEW } view_name [ (field1, field2 ...) ] AS select_statement- Throws:
ParseException
-
SqlCreateTable
public final org.apache.calcite.sql.SqlNode SqlCreateTable(org.apache.calcite.sql.parser.SqlParserPos pos, boolean isTemporary) throws ParseException Parses a CTAS or CTTAS statement after CREATE [TEMPORARY] TABLE statement which is handled in the SqlCreateOrReplace method. CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tblname [ (field1, field2, ...) ] AS select_statement.- Throws:
ParseException
-
SqlCreateSchema
public final org.apache.calcite.sql.SqlNode SqlCreateSchema(org.apache.calcite.sql.parser.SqlParserPos pos, String createType) throws ParseException Parses create table schema statement after CREATE OR REPLACE SCHEMA statement which is handled in the SqlCreateOrReplace method. CREATE [OR REPLACE] SCHEMA [ LOAD 'file:///path/to/raw_schema' | ( col1 int, col2 varchar(10) not null ) ] [FOR TABLE dfs.my_table] [PATH 'file:///path/to/schema'] [PROPERTIES ('prop1'='val1', 'prop2'='val2')]- Throws:
ParseException
-
addProperty
Helper method to add string literals divided by equals into SqlNodeList.- Throws:
ParseException
-
SqlDrop
Parses DROP command for VIEW, TABLE and SCHEMA.- Throws:
ParseException
-
SqlDropView
public final org.apache.calcite.sql.SqlNode SqlDropView(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseException Parses a drop view or drop view if exists statement after DROP VIEW statement which is handled in SqlDrop method. DROP VIEW [IF EXISTS] view_name;- Throws:
ParseException
-
SqlDropTable
public final org.apache.calcite.sql.SqlNode SqlDropTable(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseException Parses a drop table or drop table if exists statement after DROP TABLE statement which is handled in SqlDrop method. DROP TABLE [IF EXISTS] table_name;- Throws:
ParseException
-
SqlDropSchema
public final org.apache.calcite.sql.SqlNode SqlDropSchema(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseException Parses drop schema or drop schema if exists statement after DROP SCHEMA statement which is handled in SqlDrop method. DROP SCHEMA [IF EXISTS] FOR TABLE dfs.my_table- Throws:
ParseException
-
SqlRefreshMetadata
Parse refresh table metadata statement. REFRESH TABLE METADATA [COLUMNS ((field1, field2,..) | NONE)] table_name- Throws:
ParseException
-
SqlDescribeSchema
Parses statement { DESCRIBE | DESC } { SCHEMA | DATABASE } name { DESCRIBE | DESC } SCHEMA FOR TABLE dfs.my_table [AS (JSON | STATEMENT)]- Throws:
ParseException
-
SqlAlterSchema
Parses ALTER SCHEMA statements: ALTER SCHEMA (FOR TABLE dfs.tmp.nation | PATH '/tmp/schema.json') ADD [OR REPLACE] [COLUMNS (col1 int, col2 varchar)] [PROPERTIES ('prop1'='val1', 'prop2'='val2')] ALTER SCHEMA (FOR TABLE dfs.tmp.nation | PATH '/tmp/schema.json') REMOVE [COLUMNS (`col1`, `col2`)] [PROPERTIES ('prop1', 'prop2')]- Throws:
ParseException
-
SqlAlterSchemaAdd
public final org.apache.calcite.sql.SqlNode SqlAlterSchemaAdd(org.apache.calcite.sql.parser.SqlParserPos pos, org.apache.calcite.sql.SqlIdentifier table, org.apache.calcite.sql.SqlNode path) throws ParseException - Throws:
ParseException
-
ParseSchema
- Throws:
ParseException
-
SqlAlterSchemaRemove
public final org.apache.calcite.sql.SqlNode SqlAlterSchemaRemove(org.apache.calcite.sql.parser.SqlParserPos pos, org.apache.calcite.sql.SqlIdentifier table, org.apache.calcite.sql.SqlNode path) throws ParseException - Throws:
ParseException
-
SqlCreateFunction
Parse create UDF statement CREATE FUNCTION USING JAR 'jar_name'- Throws:
ParseException
-
SqlDropFunction
Parse drop UDF statement DROP FUNCTION USING JAR 'jar_name'- Throws:
ParseException
-
SqlAnalyzeTable
Parses a analyze statements:- ANALYZE TABLE [table_name | table({table function name}(parameters))] [COLUMNS {(col1, col2, ...) | NONE}] REFRESH METADATA ['level' LEVEL] [{COMPUTE | ESTIMATE} | STATISTICS [ SAMPLE number PERCENT ]]
- ANALYZE TABLE [table_name] DROP [METADATA|STATISTICS] [IF EXISTS]
- ANALYZE TABLE [table_name | table({table function name}(parameters))] {COMPUTE | ESTIMATE} | STATISTICS [(column1, column2, ...)] [ SAMPLE numeric PERCENT ]
- Throws:
ParseException
-
DrillSqlSetOption
public final DrillSqlSetOption DrillSqlSetOption(org.apache.calcite.sql.parser.Span s, String scope) throws ParseException Parses a SET statement without a leading "ALTER": SET <NAME> [ = VALUE ] Statement handles in:
SetAndResetOptionHandler
- Throws:
ParseException
-
DrillSqlResetOption
public final DrillSqlResetOption DrillSqlResetOption(org.apache.calcite.sql.parser.Span s, String scope) throws ParseException Parses a RESET statement without a leading "ALTER": RESET { | ALL } Statement handles in:
SetAndResetOptionHandler
- Throws:
ParseException
-
SqlCreateAlias
public final org.apache.calcite.sql.SqlNode SqlCreateAlias(org.apache.calcite.sql.parser.SqlParserPos pos, boolean replace, boolean isPublic) throws ParseException Parses CREATE ALIAS statement CREATE [OR REPLACE] [PUBLIC] ALIAS `alias` FOR [TABLE | STORAGE] `table/storage` [AS USER 'username']- Throws:
ParseException
-
SqlDropAlias
Parses DROP ALIAS statement DROP [PUBLIC] ALIAS [IF EXISTS] `employee-alias` [FOR (TABLE | STORAGE)] [AS USER 'username']- Throws:
ParseException
-
SqlDropAllAliases
Parses DROP ALL ALIASES statement DROP ALL [PUBLIC] ALIASES [FOR (TABLE | STORAGE)] [AS USER 'username']- Throws:
ParseException
-
ParenthesizedKeyValueOptionCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedKeyValueOptionCommaList() throws ParseException- Throws:
ParseException
-
AddKeyValueOption
public final void AddKeyValueOption(List<org.apache.calcite.sql.SqlNode> list) throws ParseException Parses an option with format key=val whose key is a simple identifier or string literal and value is a string literal.- Throws:
ParseException
-
AddOptionValue
Parses an option value (either a string or a numeric) and adds to a list.- Throws:
ParseException
-
ParenthesizedLiteralOptionCommaList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedLiteralOptionCommaList() throws ParseExceptionParses a literal list separated by comma. The literal is either a string or a numeric.- Throws:
ParseException
-
AddHint
- Throws:
ParseException
-
TableHints
public final org.apache.calcite.sql.SqlNode TableHints(org.apache.calcite.sql.SqlIdentifier tableName) throws ParseException Parses hints following a table reference, and returns the wrapped table reference.- Throws:
ParseException
-
SqlSelect
Parses a leaf SELECT expression without ORDER BY.- Throws:
ParseException
-
SqlExplain
Parses an EXPLAIN PLAN statement.- Throws:
ParseException
-
SqlQueryOrDml
Parses a query (SELECT or VALUES) or DML statement (INSERT, UPDATE, DELETE, MERGE).- Throws:
ParseException
-
ExplainDepth
Parses WITH TYPE | WITH IMPLEMENTATION | WITHOUT IMPLEMENTATION modifier for EXPLAIN PLAN.- Throws:
ParseException
-
ExplainDetailLevel
Parses INCLUDING ALL ATTRIBUTES modifier for EXPLAIN PLAN.- Throws:
ParseException
-
SqlDescribe
Parses a DESCRIBE statement.- Throws:
ParseException
-
SqlProcedureCall
Parses a CALL statement.- Throws:
ParseException
-
NamedRoutineCall
public final org.apache.calcite.sql.SqlNode NamedRoutineCall(org.apache.calcite.sql.SqlFunctionCategory routineType, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
TableParam
Table parameter of a table function. The input table with set semantics may be partitioned/ordered on one or more columns.- Throws:
ParseException
-
PartitionedQueryOrQueryOrExpr
public final org.apache.calcite.sql.SqlNode PartitionedQueryOrQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
PartitionedByAndOrderBy
public final org.apache.calcite.sql.SqlNode PartitionedByAndOrderBy(org.apache.calcite.sql.SqlNode e) throws ParseException - Throws:
ParseException
-
OrderByOfSetSemanticsTable
- Throws:
ParseException
-
CreateSetSemanticsTableIfNeeded
public final org.apache.calcite.sql.SqlNode CreateSetSemanticsTableIfNeeded(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.SqlNode e, org.apache.calcite.sql.SqlNodeList partitionList, org.apache.calcite.sql.SqlNodeList orderList) throws ParseException - Throws:
ParseException
-
SqlInsert
Parses an INSERT statement.- Throws:
ParseException
-
SqlDelete
Parses a DELETE statement.- Throws:
ParseException
-
SqlUpdate
Parses an UPDATE statement.- Throws:
ParseException
-
SqlMerge
Parses a MERGE statement.- Throws:
ParseException
-
WhenMatchedClause
public final org.apache.calcite.sql.SqlUpdate WhenMatchedClause(org.apache.calcite.sql.SqlNode table, org.apache.calcite.sql.SqlIdentifier alias) throws ParseException - Throws:
ParseException
-
WhenNotMatchedClause
public final org.apache.calcite.sql.SqlInsert WhenNotMatchedClause(org.apache.calcite.sql.SqlNode table) throws ParseException - Throws:
ParseException
-
AddSelectItem
Parses one item in a select list.- Throws:
ParseException
-
SelectExpression
Parses one unaliased expression in a select list.- Throws:
ParseException
-
Natural
- Throws:
ParseException
-
JoinType
- Throws:
ParseException
-
FromClause
Parses the FROM clause for a SELECT.FROM is mandatory in standard SQL, optional in dialects such as MySQL, PostgreSQL. The parser allows SELECT without FROM, but the validator fails if conformance is, say, STRICT_2003.
- Throws:
ParseException
-
Join
- Throws:
ParseException
-
JoinTable
public final org.apache.calcite.sql.SqlNode JoinTable(org.apache.calcite.sql.SqlNode e) throws ParseException Matches "LEFT JOIN t ON ...", "RIGHT JOIN t USING ...", "JOIN t".- Throws:
ParseException
-
TableRef
Parses a table reference in a FROM clause, not lateral unless LATERAL is explicitly specified.- Throws:
ParseException
-
TableRef1
public final org.apache.calcite.sql.SqlNode TableRef1(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
TableRef2
Parses a table reference in a FROM clause.- Throws:
ParseException
-
TableRef3
public final org.apache.calcite.sql.SqlNode TableRef3(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext, boolean lateral) throws ParseException - Throws:
ParseException
-
Tablesample
public final org.apache.calcite.sql.SqlNode Tablesample(org.apache.calcite.sql.SqlNode tableRef) throws ParseException - Throws:
ParseException
-
ExtendTable
public final org.apache.calcite.sql.SqlNode ExtendTable(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Wraps a table reference in a call to EXTEND if an optional "EXTEND" clause is present.- Throws:
ParseException
-
ExtendList
- Throws:
ParseException
-
AddColumnType
- Throws:
ParseException
-
AddCompoundIdentifierType
public final void AddCompoundIdentifierType(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) throws ParseException Parses a compound identifier with optional type.- Throws:
ParseException
-
TableFunctionCall
- Throws:
ParseException
-
ExplicitTable
public final org.apache.calcite.sql.SqlNode ExplicitTable(org.apache.calcite.sql.parser.SqlParserPos pos) throws ParseException Parses an explicit TABLE t reference.- Throws:
ParseException
-
TableConstructor
Parses a VALUES leaf query expression.- Throws:
ParseException
-
AddRowConstructor
public final void AddRowConstructor(List<org.apache.calcite.sql.SqlNode> list) throws ParseException Parses a row constructor and adds it to a list.- Throws:
ParseException
-
RowConstructor
Parses a row constructor in the context of a VALUES expression.- Throws:
ParseException
-
Where
Parses a WHERE clause for SELECT, DELETE, and UPDATE.- Throws:
ParseException
-
GroupBy
Parses a GROUP BY clause for SELECT.- Throws:
ParseException
-
GroupingElementList
- Throws:
ParseException
-
AddGroupingElement
public final void AddGroupingElement(List<org.apache.calcite.sql.SqlNode> list) throws ParseException - Throws:
ParseException
-
ExpressionCommaList
public final org.apache.calcite.sql.SqlNodeList ExpressionCommaList(org.apache.calcite.sql.parser.Span s, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a list of expressions separated by commas.- Throws:
ParseException
-
AddExpressions
public final void AddExpressions(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a list of expressions separated by commas, appending expressions to a given list.- Throws:
ParseException
-
Having
Parses a HAVING clause for SELECT.- Throws:
ParseException
-
Window
Parses a WINDOW clause for SELECT.- Throws:
ParseException
-
AddWindowSpec
- Throws:
ParseException
-
WindowSpecification
Parses a window specification.- Throws:
ParseException
-
WindowRange
- Throws:
ParseException
-
Qualify
Parses a QUALIFY clause for SELECT.- Throws:
ParseException
-
OrderBy
Parses an ORDER BY clause.- Throws:
ParseException
-
AddOrderItem
Parses one item in an ORDER BY clause, and adds it to a list.- Throws:
ParseException
-
Over
public final org.apache.calcite.sql.SqlNode Over(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Wraps a table reference in a call to OVER if an optional "OVER" clause is present (if the dialect supports OVER for table expressions).- Throws:
ParseException
-
Snapshot
public final org.apache.calcite.sql.SqlSnapshot Snapshot(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Parses a FOR SYSTEM_TIME clause following a table expression.- Throws:
ParseException
-
Pivot
public final org.apache.calcite.sql.SqlNode Pivot(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Parses a PIVOT clause following a table expression.- Throws:
ParseException
-
AddPivotAgg
- Throws:
ParseException
-
AddPivotValue
- Throws:
ParseException
-
Unpivot
public final org.apache.calcite.sql.SqlNode Unpivot(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Parses an UNPIVOT clause following a table expression.- Throws:
ParseException
-
AddUnpivotValue
- Throws:
ParseException
-
MatchRecognize
public final org.apache.calcite.sql.SqlMatchRecognize MatchRecognize(org.apache.calcite.sql.SqlNode tableRef) throws ParseException Parses a MATCH_RECOGNIZE clause following a table expression.- Throws:
ParseException
-
MeasureColumnCommaList
public final org.apache.calcite.sql.SqlNodeList MeasureColumnCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
AddMeasureColumn
- Throws:
ParseException
-
PatternExpression
- Throws:
ParseException
-
PatternTerm
- Throws:
ParseException
-
PatternFactor
- Throws:
ParseException
-
PatternPrimary
- Throws:
ParseException
-
SubsetDefinitionCommaList
public final org.apache.calcite.sql.SqlNodeList SubsetDefinitionCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
AddSubsetDefinition
public final void AddSubsetDefinition(List<org.apache.calcite.sql.SqlNode> list) throws ParseException - Throws:
ParseException
-
PatternDefinitionCommaList
public final org.apache.calcite.sql.SqlNodeList PatternDefinitionCommaList(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
PatternDefinition
- Throws:
ParseException
-
SqlExpressionEof
Parses a SQL expression (such as might occur in a WHERE clause) followed by the end-of-file symbol.- Throws:
ParseException
-
QueryOrExpr
public final org.apache.calcite.sql.SqlNode QueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses either a row expression or a query expression without ORDER BY.Examples of valid queries:
SELECT c FROM t
SELECT c
(valid in some dialects)SELECT c FROM t UNION SELECT c2 FROM t2
WITH q AS (SELECT 1) SELECT * FROM q
VALUES (1, 2)
TABLE t
Non-examples:
emp CROSS JOIN dept
SELECT c FROM t ORDER BY c
(SELECT c FROM t)
- Throws:
ParseException
-
Query
public final org.apache.calcite.sql.SqlNode Query(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
AddSetOpQueryOrExpr
public final void AddSetOpQueryOrExpr(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a set operator (e.g. UNION or INTERSECT) followed by a query or expression, and adds both tolist
.- Throws:
ParseException
-
AddSetOpQuery
public final void AddSetOpQuery(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a set operator (e.g. UNION or INTERSECT) followed by a query, and adds both tolist
.- Throws:
ParseException
-
WithList
- Throws:
ParseException
-
AddWithItem
- Throws:
ParseException
-
LeafQueryOrExpr
public final org.apache.calcite.sql.SqlNode LeafQueryOrExpr(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses either a row expression, a leaf query expression, or a parenthesized expression of any kind.- Throws:
ParseException
-
AddExpression
public final void AddExpression(List<org.apache.calcite.sql.SqlNode> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException AsExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext)
but appends to a list.- Throws:
ParseException
-
Expression
public final org.apache.calcite.sql.SqlNode Expression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a row expression or a parenthesized expression of any kind.- Throws:
ParseException
-
AddExpression2b
public final void AddExpression2b(List<Object> list, org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException - Throws:
ParseException
-
Expression2
public final List<Object> Expression2(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a binary row expression, or a parenthesized expression of any kind.The result is as a flat list of operators and operands. The top-level call to get an expression should call
Expression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext)
, but lower-level calls should call this, to give the parser the opportunity to associate operator calls.For example 'a = b like c = d' should come out '((a = b) like c) = d' because LIKE and '=' have the same precedence, but tends to come out as '(a = b) like (c = d)' because (a = b) and (c = d) are parsed as separate expressions.
- Throws:
ParseException
-
comp
Parses a comparison operator inside a SOME / ALL predicate.- Throws:
ParseException
-
Expression3
public final org.apache.calcite.sql.SqlNode Expression3(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a unary row expression, or a parenthesized expression of any kind.- Throws:
ParseException
-
periodOperator
- Throws:
ParseException
-
CollateClause
Parses a COLLATE clause- Throws:
ParseException
-
UnsignedNumericLiteralOrParam
Numeric literal or parameter; used in LIMIT, OFFSET and FETCH clauses.- Throws:
ParseException
-
RowExpressionExtension
Parses a row expression extension, it can be either an identifier, or a call to a named function.- Throws:
ParseException
-
StringAggFunctionCall
Parses a call to the STRING_AGG aggregate function (or to an aggregate function with similar syntax: ARRAY_AGG, ARRAY_CONCAT_AGG, GROUP_CONCAT).- Throws:
ParseException
-
AtomicRowExpression
Parses an atomic row expression.- Throws:
ParseException
-
CaseExpression
- Throws:
ParseException
-
SequenceExpression
- Throws:
ParseException
-
SqlSetOption
public final org.apache.calcite.sql.SqlSetOption SqlSetOption(org.apache.calcite.sql.parser.Span s, String scope) throws ParseException Parses "SET <NAME> = VALUE" or "RESET <NAME>", without a leading "ALTER <SCOPE>".- Throws:
ParseException
-
SqlAlter
Parses an expression for setting or resetting an option in SQL, such as QUOTED_IDENTIFIERS, or explain plan level (physical/logical).- Throws:
ParseException
-
Scope
- Throws:
ParseException
-
Literal
Parses a literal expression, allowing continued string literals. Usually returns an SqlLiteral, but a continued string literal is an SqlCall expression, which concatenates 2 or more string literals; the validator reduces this.If the context allows both literals and expressions, use
LiteralOrIntervalExpression()
, which requires less lookahead.- Throws:
ParseException
-
NonIntervalLiteral
Parses a literal that is not an interval literal.- Throws:
ParseException
-
LiteralOrIntervalExpression
Parses a literal or an interval expression.We include them in the same production because it is difficult to distinguish interval literals from interval expression (both of which start with the
INTERVAL
keyword); this way, we can use less LOOKAHEAD.- Throws:
ParseException
-
UnsignedNumericLiteral
public final org.apache.calcite.sql.SqlNumericLiteral UnsignedNumericLiteral() throws ParseExceptionParses a unsigned numeric literal- Throws:
ParseException
-
NumericLiteral
Parses a numeric literal (can be signed)- Throws:
ParseException
-
SpecialLiteral
Parse a special literal keyword- Throws:
ParseException
-
StringLiteral
Parses a string literal. The literal may be continued onto several lines. For a simple literal, the result is an SqlLiteral. For a continued literal, the result is an SqlCall expression, which concatenates 2 or more string literals; the validator reduces this.- Returns:
- a literal expression
- Throws:
ParseException
- See Also:
-
SqlLiteral.unchain(SqlNode)
SqlLiteral.stringValue(SqlNode)
-
SimpleStringLiteral
Parses a character literal. Matches a single-quoted string, such as 'foo'; on BigQuery also matches a double-quoted string, such as "foo". Returns the value of the string with quotes removed.- Throws:
ParseException
-
DateTimeLiteral
Parses a date/time literal.- Throws:
ParseException
-
DateTimeConstructorCall
Parses a Date/Time constructor function, for example "DATE(1969, 7, 21)" or "DATETIME(d, t)". Enabled in some libraries (e.g. BigQuery).- Throws:
ParseException
-
MultisetConstructor
Parses a MULTISET constructor- Throws:
ParseException
-
ArrayConstructor
Parses an ARRAY constructor- Throws:
ParseException
-
ArrayLiteral
- Throws:
ParseException
-
MapConstructor
Parses a MAP constructor- Throws:
ParseException
-
PeriodConstructor
Parses a PERIOD constructor- Throws:
ParseException
-
IntervalLiteral
Parses an interval literal.- Throws:
ParseException
-
IntervalLiteralOrExpression
Parses an interval literal (e.g.INTERVAL '2:3' HOUR TO MINUTE
) or an interval expression (e.g.INTERVAL emp.empno MINUTE
orINTERVAL 3 MONTHS
).- Throws:
ParseException
-
Year
- Throws:
ParseException
-
Quarter
- Throws:
ParseException
-
Month
- Throws:
ParseException
-
Week
- Throws:
ParseException
-
Day
- Throws:
ParseException
-
Hour
- Throws:
ParseException
-
Minute
- Throws:
ParseException
-
Second
- Throws:
ParseException
-
IntervalQualifier
- Throws:
ParseException
-
IntervalQualifierStart
public final org.apache.calcite.sql.SqlIntervalQualifier IntervalQualifierStart() throws ParseExceptionInterval qualifier without 'TO unit'.- Throws:
ParseException
-
TimeUnitOrName
Parses a built-in time unit (e.g. "YEAR") or user-defined time frame (e.g. "MINUTE15") and in each case returns aSqlIntervalQualifier
.The units are used in several functions, incuding CEIL, FLOOR, EXTRACT. Includes NANOSECOND, MILLISECOND, which were previously allowed in EXTRACT but not CEIL, FLOOR.
Includes
WEEK
andWEEK(SUNDAY)
throughWEEK(SATURDAY)
.Does not include SQL_TSI_DAY, SQL_TSI_FRAC_SECOND etc. These will be parsed as identifiers and can be resolved in the validator if they are registered as abbreviations in your time frame set.
- Throws:
ParseException
-
TimeUnit
Parses a built-in time unit (e.g. "YEAR") and returns aSqlIntervalQualifier
.Includes
WEEK
andWEEK(SUNDAY)
throughWEEK(SATURDAY)
.Does not include SQL_TSI_DAY, SQL_TSI_FRAC_SECOND etc. These will be parsed as identifiers and can be resolved in the validator if they are registered as abbreviations in your time frame set.
- Throws:
ParseException
-
weekdayName
- Throws:
ParseException
-
DynamicParam
Parses a dynamic parameter marker.- Throws:
ParseException
-
AddIdentifierSegment
public final void AddIdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) throws ParseException Parses one segment of an identifier that may be composite.Each time it reads an identifier it writes one element to each list; the entry in
positions
records its position and whether the segment was quoted.- Throws:
ParseException
-
AddTableIdentifierSegment
public final void AddTableIdentifierSegment(List<String> names, List<org.apache.calcite.sql.parser.SqlParserPos> positions) throws ParseException AsAddIdentifierSegment(java.util.List<java.lang.String>, java.util.List<org.apache.calcite.sql.parser.SqlParserPos>)
but part of a table name (for example, followingFROM
,INSERT
orUPDATE
).In some dialects the lexical rules for table names are different from for other identifiers. For example, in BigQuery, table names may contain hyphens.
- Throws:
ParseException
-
Identifier
Parses a simple identifier as a String.- Throws:
ParseException
-
SimpleIdentifier
Parses a simple identifier as an SqlIdentifier.- Throws:
ParseException
-
SimpleIdentifierFromStringLiteral
public final org.apache.calcite.sql.SqlIdentifier SimpleIdentifierFromStringLiteral() throws ParseExceptionParses a character literal as an SqlIdentifier. Only valid for column aliases in certain dialects.- Throws:
ParseException
-
AddSimpleIdentifiers
public final void AddSimpleIdentifiers(List<org.apache.calcite.sql.SqlNode> list) throws ParseException Parses a comma-separated list of simple identifiers.- Throws:
ParseException
-
ParenthesizedSimpleIdentifierList
public final org.apache.calcite.sql.SqlNodeList ParenthesizedSimpleIdentifierList() throws ParseExceptionList of simple identifiers in parentheses. The position extends from the open parenthesis to the close parenthesis.- Throws:
ParseException
-
SimpleIdentifierOrList
List of simple identifiers in parentheses or one simple identifier.- Examples:
DEPTNO
(EMPNO, DEPTNO)
- Throws:
ParseException
-
CompoundIdentifier
Parses a Drill compound identifier.- Throws:
ParseException
-
CompoundTableIdentifier
Parses a compound identifier in the FROM clause.- Throws:
ParseException
-
AddCompoundIdentifierTypeCommaList
public final void AddCompoundIdentifierTypeCommaList(List<org.apache.calcite.sql.SqlNode> list, List<org.apache.calcite.sql.SqlNode> extendList) throws ParseException Parses a comma-separated list of compound identifiers.- Throws:
ParseException
-
ParenthesizedCompoundIdentifierList
public final org.apache.calcite.util.Pair<org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList> ParenthesizedCompoundIdentifierList() throws ParseExceptionList of compound identifiers in parentheses. The position extends from the open parenthesis to the close parenthesis.- Throws:
ParseException
-
NewSpecification
Parses a NEW UDT(...) expression.- Throws:
ParseException
-
UnsignedIntLiteral
- Throws:
ParseException
-
IntLiteral
- Throws:
ParseException
-
DataType
- Throws:
ParseException
-
TypeName
- Throws:
ParseException
-
SqlTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
SqlTypeName1
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName1(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
SqlTypeName2
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName2(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
SqlTypeName3
public final org.apache.calcite.sql.SqlTypeNameSpec SqlTypeName3(org.apache.calcite.sql.parser.Span s) throws ParseException - Throws:
ParseException
-
JdbcOdbcDataTypeName
public final org.apache.calcite.sql.SqlJdbcDataTypeName JdbcOdbcDataTypeName() throws ParseException- Throws:
ParseException
-
JdbcOdbcDataType
- Throws:
ParseException
-
CollectionsTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec CollectionsTypeName(org.apache.calcite.sql.SqlTypeNameSpec elementTypeName) throws ParseException Parse a collection type name, the input element type name may also be a collection type.- Throws:
ParseException
-
NullableOptDefaultTrue
Parse a nullable option, default is true.- Throws:
ParseException
-
NullableOptDefaultFalse
Parse a nullable option, default is false.- Throws:
ParseException
-
NotNullOpt
Parses NOT NULL and returns false, or parses nothing and returns true.- Throws:
ParseException
-
AddFieldNameTypes
public final void AddFieldNameTypes(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes) throws ParseException Parse a "name1 type1 [NULL | NOT NULL], name2 type2 [NULL | NOT NULL] ..." list, the field type default is not nullable.- Throws:
ParseException
-
AddFieldNameType
public final void AddFieldNameType(List<org.apache.calcite.sql.SqlIdentifier> fieldNames, List<org.apache.calcite.sql.SqlDataTypeSpec> fieldTypes) throws ParseException - Throws:
ParseException
-
RowTypeName
Parse Row type with format: Row(name1 type1, name2 type2). Every field type can have suffix of `NULL` or `NOT NULL` to indicate if this type is nullable. i.e. Row(f0 int not null, f1 varchar null).- Throws:
ParseException
-
CharacterTypeName
public final org.apache.calcite.sql.SqlTypeNameSpec CharacterTypeName(org.apache.calcite.sql.parser.Span s) throws ParseException Parse character types: char, varchar.- Throws:
ParseException
-
DateTimeTypeName
Parse datetime types: date, time, timestamp.- Throws:
ParseException
-
PrecisionOpt
- Throws:
ParseException
-
TimeZoneOpt
Parse a time zone suffix for DateTime types. According to SQL-2011, "with time zone" and "without time zone" belong to standard SQL but we only implement the "without time zone".We also support "with local time zone".
- Returns:
- true if this is "with local time zone".
- Throws:
ParseException
-
CursorExpression
public final org.apache.calcite.sql.SqlNode CursorExpression(org.apache.calcite.sql.parser.SqlAbstractParserImpl.ExprContext exprContext) throws ParseException Parses a CURSOR(query) expression. The parser allows these anywhere, but the validator restricts them to appear only as arguments to table functions.- Throws:
ParseException
-
BuiltinFunctionCall
Parses a call to a builtin function with special syntax.- Throws:
ParseException
-
JsonRepresentation
- Throws:
ParseException
-
JsonInputClause
- Throws:
ParseException
-
JsonReturningClause
- Throws:
ParseException
-
JsonOutputClause
- Throws:
ParseException
-
JsonPathSpec
- Throws:
ParseException
-
JsonApiCommonSyntax
- Throws:
ParseException
-
JsonExistsErrorBehavior
public final org.apache.calcite.sql.SqlJsonExistsErrorBehavior JsonExistsErrorBehavior() throws ParseException- Throws:
ParseException
-
JsonExistsFunctionCall
- Throws:
ParseException
-
JsonValueEmptyOrErrorBehavior
public final List<org.apache.calcite.sql.SqlNode> JsonValueEmptyOrErrorBehavior() throws ParseException- Throws:
ParseException
-
JsonValueFunctionCall
- Throws:
ParseException
-
JsonQueryEmptyOrErrorBehavior
public final List<org.apache.calcite.sql.SqlNode> JsonQueryEmptyOrErrorBehavior() throws ParseException- Throws:
ParseException
-
JsonQueryWrapperBehavior
- Throws:
ParseException
-
JsonQueryFunctionCall
- Throws:
ParseException
-
JsonName
- Throws:
ParseException
-
JsonNameAndValue
- Throws:
ParseException
-
JsonConstructorNullClause
- Throws:
ParseException
-
JsonObjectFunctionCall
- Throws:
ParseException
-
JsonObjectAggFunctionCall
- Throws:
ParseException
-
JsonArrayFunctionCall
- Throws:
ParseException
-
JsonArrayAggOrderByClause
- Throws:
ParseException
-
JsonArrayAggFunctionCall
- Throws:
ParseException
-
TimestampAddFunctionCall
Parses a call to TIMESTAMPADD.- Throws:
ParseException
-
TimestampDiffFunctionCall
Parses a call to TIMESTAMPDIFF.- Throws:
ParseException
-
TimestampDiff3FunctionCall
Parses a call to BigQuery's TIMESTAMP_DIFF.The difference between TIMESTAMPDIFF and TIMESTAMP_DIFF is the ordering of the parameters and the arrangement of the subtraction. TIMESTAMPDIFF uses (unit, timestamp1, timestamp2) with (t2 - t1), while TIMESTAMP_DIFF uses (timestamp1, timestamp2, unit) with (t1 - t2).
- Throws:
ParseException
-
DateTruncFunctionCall
Parses a call to DATE_TRUNC.- Throws:
ParseException
-
TimestampTruncFunctionCall
Parses a call to TIMESTAMP_TRUNC.- Throws:
ParseException
-
TimeDiffFunctionCall
Parses a call to BigQuery's TIME_DIFF.- Throws:
ParseException
-
TimeTruncFunctionCall
Parses a call to TIME_TRUNC.- Throws:
ParseException
-
GroupByWindowingCall
Parses a call to a grouping function inside the GROUP BY clause, for exampleTUMBLE(rowtime, INTERVAL '1' MINUTE)
.- Throws:
ParseException
-
MatchRecognizeFunctionCall
- Throws:
ParseException
-
MatchRecognizeCallWithModifier
- Throws:
ParseException
-
withinDistinct
public final org.apache.calcite.sql.SqlCall withinDistinct(org.apache.calcite.sql.SqlNode arg) throws ParseException - Throws:
ParseException
-
withinGroup
public final org.apache.calcite.sql.SqlCall withinGroup(org.apache.calcite.sql.SqlNode arg) throws ParseException - Throws:
ParseException
-
NullTreatment
public final org.apache.calcite.util.Pair<org.apache.calcite.sql.parser.SqlParserPos,org.apache.calcite.sql.SqlOperator> NullTreatment() throws ParseException- Throws:
ParseException
-
nullTreatment
public final org.apache.calcite.sql.SqlCall nullTreatment(org.apache.calcite.sql.SqlCall arg) throws ParseException - Throws:
ParseException
-
NamedFunctionCall
Parses a call to a named function (could be a builtin with regular syntax, or else a UDF).NOTE: every UDF has two names: an invocation name and a specific name. Normally, function calls are resolved via overload resolution and invocation names. The SPECIFIC prefix allows overload resolution to be bypassed. Note that usage of the SPECIFIC prefix in queries is non-standard; it is used internally by Farrago, e.g. in stored view definitions to permanently bind references to a particular function after the overload resolution performed by view creation.
TODO jvs 25-Mar-2005: Once we have SQL-Flagger support, flag SPECIFIC as non-standard.
- Throws:
ParseException
-
NamedCall
- Throws:
ParseException
-
StandardFloorCeilOptions
public final org.apache.calcite.sql.SqlNode StandardFloorCeilOptions(org.apache.calcite.sql.parser.Span s, boolean floorFlag) throws ParseException - Throws:
ParseException
-
NonReservedJdbcFunctionName
Parses the name of a JDBC function that is a token but is not reserved.- Throws:
ParseException
-
FunctionName
Parses the name of a function (either a compound identifier or a reserved word which can be used as a function name).- Throws:
ParseException
-
ReservedFunctionName
Parses a reserved word which is used as the name of a function.- Throws:
ParseException
-
ContextVariable
- Throws:
ParseException
-
JdbcFunctionCall
Parses a function call expression with JDBC syntax.- Throws:
ParseException
-
BinaryQueryOperator
Parses a binary query operator like UNION.- Throws:
ParseException
-
BinaryMultisetOperator
public final org.apache.calcite.sql.SqlBinaryOperator BinaryMultisetOperator() throws ParseExceptionParses a binary multiset operator.- Throws:
ParseException
-
BinaryRowOperator
Parses a binary row operator like AND.- Throws:
ParseException
-
PrefixRowOperator
Parses a prefix row operator like NOT.- Throws:
ParseException
-
PostfixRowOperator
Parses a postfix row operator like IS NOT NULL.- Throws:
ParseException
-
NonReservedKeyWord
Parses a non-reserved keyword for use as an identifier.The method is broken up into several sub-methods; without this decomposition, parsers such as Babel with more than ~1,000 non-reserved keywords would generate such deeply nested 'if' statements that javac would fail with a
StackOverflowError
.The list is generated from the FMPP config data. To add or remove keywords, modify config.fmpp. For parsers except Babel, make sure that keywords are not reserved by the SQL standard.
- Throws:
ParseException
- See Also:
-
SQL:2003 Part 2 Section 5.2
-
NonReservedKeyWord0of3
- Throws:
ParseException
- See Also:
-
NonReservedKeyWord1of3
- Throws:
ParseException
- See Also:
-
NonReservedKeyWord2of3
- Throws:
ParseException
- See Also:
-
UnusedExtension
Defines a production which can never be accepted by the parser. In effect, it tells the parser, "If you got here, you've gone too far." It is used as the default production for parser extension points; derived parsers replace it with a real production when they want to implement a particular extension point.- Throws:
ParseException
-
ReInit
Reinitialise. -
ReInit
Reinitialise. -
ReInit
Reinitialise.- Specified by:
ReInit
in classorg.apache.calcite.sql.parser.SqlAbstractParserImpl
-
ReInit
Reinitialise. -
getNextToken
Get the next Token. -
getToken
Get the specific Token. -
generateParseException
Generate ParseException. -
enable_tracing
public final void enable_tracing()Enable tracing. -
disable_tracing
public final void disable_tracing()Disable tracing.
-