Class

org.apache.spark.sql.catalyst.parser

AstBuilder

Related Doc: package parser

Permalink

class AstBuilder extends SqlBaseBaseVisitor[AnyRef] with Logging

The AstBuilder converts an ANTLR4 ParseTree into a catalyst Expression, LogicalPlan or TableIdentifier.

Linear Supertypes
Logging, SqlBaseBaseVisitor[AnyRef], SqlBaseVisitor[AnyRef], AbstractParseTreeVisitor[AnyRef], ParseTreeVisitor[AnyRef], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AstBuilder
  2. Logging
  3. SqlBaseBaseVisitor
  4. SqlBaseVisitor
  5. AbstractParseTreeVisitor
  6. ParseTreeVisitor
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AstBuilder()

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def aggregateResult(arg0: AnyRef, arg1: AnyRef): AnyRef

    Permalink
    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def createStructType(ctx: ColTypeListContext): StructType

    Permalink

    Create a StructType from a sequence of StructFields.

    Create a StructType from a sequence of StructFields.

    Attributes
    protected
  8. def defaultResult(): AnyRef

    Permalink
    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  11. def expression(ctx: ParserRuleContext): Expression

    Permalink

    Create an expression from the given context.

    Create an expression from the given context. This method just passes the context on to the vistor and only takes care of typing (We assume that the visitor returns an Expression here).

    Attributes
    protected
  12. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  15. def initializeLogIfNecessary(isInterpreter: Boolean): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. def isTraceEnabled(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  18. def log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  19. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  20. def logDebug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  21. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  22. def logError(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  23. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  24. def logInfo(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  25. def logName: String

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  26. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  27. def logTrace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  28. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  29. def logWarning(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  30. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  31. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  33. def plan(tree: ParserRuleContext): LogicalPlan

    Permalink
    Attributes
    protected
  34. def shouldVisitNextChild(arg0: RuleNode, arg1: AnyRef): Boolean

    Permalink
    Attributes
    protected[org.antlr.v4.runtime.tree]
    Definition Classes
    AbstractParseTreeVisitor
  35. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  36. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  37. def typedVisit[T](ctx: ParseTree): T

    Permalink
    Attributes
    protected
  38. def visit(arg0: ParseTree): AnyRef

    Permalink
    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  39. def visitAddResource(ctx: AddResourceContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  40. def visitAddTablePartition(ctx: AddTablePartitionContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  41. def visitAggregation(ctx: AggregationContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  42. def visitAliasedQuery(ctx: AliasedQueryContext): LogicalPlan

    Permalink

    Create an alias (SubqueryAlias) for a sub-query.

    Create an alias (SubqueryAlias) for a sub-query. This is practically the same as visitAliasedRelation and visitNamedExpression, ANTLR4 however requires us to use 3 different hooks.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  43. def visitAliasedRelation(ctx: AliasedRelationContext): LogicalPlan

    Permalink

    Create an alias (SubqueryAlias) for a join relation.

    Create an alias (SubqueryAlias) for a join relation. This is practically the same as visitAliasedQuery and visitNamedExpression, ANTLR4 however requires us to use 3 different hooks.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  44. def visitAlterViewQuery(ctx: AlterViewQueryContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  45. def visitAnalyze(ctx: AnalyzeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  46. def visitArithmeticBinary(ctx: ArithmeticBinaryContext): Expression

    Permalink

    Create a binary arithmetic expression.

    Create a binary arithmetic expression. The following arithmetic operators are supported: - Multiplication: '*' - Division: '/' - Hive Long Division: 'DIV' - Modulo: '%' - Addition: '+' - Subtraction: '-' - Binary AND: '&' - Binary XOR - Binary OR: '|'

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  47. def visitArithmeticOperator(ctx: ArithmeticOperatorContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  48. def visitArithmeticUnary(ctx: ArithmeticUnaryContext): Expression

    Permalink

    Create a unary arithmetic expression.

    Create a unary arithmetic expression. The following arithmetic operators are supported: - Plus: '+' - Minus: '-' - Bitwise Not: '~'

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  49. def visitBigIntLiteral(ctx: BigIntLiteralContext): Literal

    Permalink

    Create a Long Literal expression.

    Create a Long Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  50. def visitBooleanDefault(ctx: BooleanDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  51. def visitBooleanLiteral(ctx: BooleanLiteralContext): Literal

    Permalink

    Create a Boolean literal expression.

    Create a Boolean literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  52. def visitBooleanValue(ctx: BooleanValueContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  53. def visitBucketSpec(ctx: BucketSpecContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  54. def visitCacheTable(ctx: CacheTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  55. def visitCast(ctx: CastContext): Expression

    Permalink

    Create a Cast expression.

    Create a Cast expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  56. def visitChildren(node: RuleNode): AnyRef

    Permalink

    Override the default behavior for all visit methods.

    Override the default behavior for all visit methods. This will only return a non-null result when the context has only one child. This is done because there is no generic method to combine the results of the context children. In all other cases null is returned.

    Definition Classes
    AstBuilder → AbstractParseTreeVisitor → ParseTreeVisitor
  57. def visitClearCache(ctx: ClearCacheContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  58. def visitColType(ctx: ColTypeContext): StructField

    Permalink

    Create a StructField from a column definition.

    Create a StructField from a column definition.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  59. def visitColTypeList(ctx: ColTypeListContext): Seq[StructField]

    Permalink

    Create a StructType from a number of column definitions.

    Create a StructType from a number of column definitions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  60. def visitColumnReference(ctx: ColumnReferenceContext): Expression

    Permalink

    Create an UnresolvedAttribute expression.

    Create an UnresolvedAttribute expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  61. def visitComparison(ctx: ComparisonContext): Expression

    Permalink

    Create a comparison expression.

    Create a comparison expression. This compares two expressions. The following comparison operators are supported: - Equal: '=' or '==' - Null-safe Equal: '<=>' - Not Equal: '<>' or '!=' - Less than: '<' - Less then or Equal: '<=' - Greater than: '>' - Greater then or Equal: '>='

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  62. def visitComparisonOperator(ctx: ComparisonOperatorContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  63. def visitComplexDataType(ctx: ComplexDataTypeContext): DataType

    Permalink

    Create a complex DataType.

    Create a complex DataType. Arrays, Maps and Structures are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  64. def visitConstantDefault(ctx: ConstantDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  65. def visitConstantList(ctx: ConstantListContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  66. def visitCreateDatabase(ctx: CreateDatabaseContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  67. def visitCreateFileFormat(ctx: CreateFileFormatContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  68. def visitCreateFunction(ctx: CreateFunctionContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  69. def visitCreateTable(ctx: CreateTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  70. def visitCreateTableHeader(ctx: CreateTableHeaderContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  71. def visitCreateTableLike(ctx: CreateTableLikeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  72. def visitCreateTableUsing(ctx: CreateTableUsingContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  73. def visitCreateView(ctx: CreateViewContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  74. def visitCtes(ctx: CtesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  75. def visitDecimalLiteral(ctx: DecimalLiteralContext): Literal

    Permalink

    Create a decimal literal for a regular decimal number.

    Create a decimal literal for a regular decimal number.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  76. def visitDereference(ctx: DereferenceContext): Expression

    Permalink

    Create a dereference expression.

    Create a dereference expression. The return type depends on the type of the parent, this can either be a UnresolvedAttribute (if the parent is an UnresolvedAttribute), or an UnresolvedExtractValue if the parent is some expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  77. def visitDescribeColName(ctx: DescribeColNameContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  78. def visitDescribeDatabase(ctx: DescribeDatabaseContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  79. def visitDescribeFuncName(ctx: DescribeFuncNameContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  80. def visitDescribeFunction(ctx: DescribeFunctionContext): LogicalPlan

    Permalink

    Create a plan for a DESCRIBE FUNCTION command.

    Create a plan for a DESCRIBE FUNCTION command.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  81. def visitDescribeTable(ctx: DescribeTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  82. def visitDoubleLiteral(ctx: DoubleLiteralContext): Literal

    Permalink

    Create a Double Literal expression.

    Create a Double Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  83. def visitDropDatabase(ctx: DropDatabaseContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  84. def visitDropFunction(ctx: DropFunctionContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  85. def visitDropTable(ctx: DropTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  86. def visitDropTablePartitions(ctx: DropTablePartitionsContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  87. def visitErrorNode(arg0: ErrorNode): AnyRef

    Permalink
    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  88. def visitExists(ctx: ExistsContext): Expression

    Permalink

    Create a filtering correlated sub-query (EXISTS).

    Create a filtering correlated sub-query (EXISTS).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  89. def visitExplain(ctx: ExplainContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  90. def visitExpression(ctx: ExpressionContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  91. def visitFailNativeCommand(ctx: FailNativeCommandContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  92. def visitFrameBound(ctx: FrameBoundContext): FrameBoundary

    Permalink

    Create or resolve a FrameBoundary.

    Create or resolve a FrameBoundary. Simple math expressions are allowed for Value Preceding/Following boundaries. These expressions must be constant (foldable) and return an integer value.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  93. def visitFromClause(ctx: FromClauseContext): LogicalPlan

    Permalink

    Create a logical plan for a given 'FROM' clause.

    Create a logical plan for a given 'FROM' clause. Note that we support multiple (comma separated) relations here, these get converted into a single plan by condition-less inner join.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  94. def visitFunctionCall(ctx: FunctionCallContext): Expression

    Permalink

    Create a (windowed) Function expression.

    Create a (windowed) Function expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  95. def visitFunctionName(ctx: QualifiedNameContext): FunctionIdentifier

    Permalink

    Create a function database (optional) and name pair.

    Create a function database (optional) and name pair.

    Attributes
    protected
  96. def visitGenericFileFormat(ctx: GenericFileFormatContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  97. def visitGroupingSet(ctx: GroupingSetContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  98. def visitIdentifierComment(ctx: IdentifierCommentContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  99. def visitIdentifierCommentList(ctx: IdentifierCommentListContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  100. def visitIdentifierList(ctx: IdentifierListContext): Seq[String]

    Permalink

    Create a Sequence of Strings for a parenthesis enclosed alias list.

    Create a Sequence of Strings for a parenthesis enclosed alias list.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  101. def visitIdentifierSeq(ctx: IdentifierSeqContext): Seq[String]

    Permalink

    Create a Sequence of Strings for an identifier list.

    Create a Sequence of Strings for an identifier list.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  102. def visitInlineTable(ctx: InlineTableContext): LogicalPlan

    Permalink

    Create an inline table (a virtual table in Hive parlance).

    Create an inline table (a virtual table in Hive parlance).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  103. def visitInlineTableDefault1(ctx: InlineTableDefault1Context): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  104. def visitInlineTableDefault2(ctx: InlineTableDefault2Context): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  105. def visitInsertInto(ctx: InsertIntoContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  106. def visitIntegerLiteral(ctx: IntegerLiteralContext): Literal

    Permalink

    Create an integral literal expression.

    Create an integral literal expression. The code selects the most narrow integral type possible, either a BigDecimal, a Long or an Integer is returned.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  107. def visitInterval(ctx: IntervalContext): Literal

    Permalink

    Create a CalendarInterval literal expression.

    Create a CalendarInterval literal expression. An interval expression can contain multiple unit value pairs, for instance: interval 2 months 2 days.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  108. def visitIntervalField(ctx: IntervalFieldContext): CalendarInterval

    Permalink

    Create a CalendarInterval for a unit value pair.

    Create a CalendarInterval for a unit value pair. Two unit configuration types are supported: - Single unit. - From-To unit (only 'YEAR TO MONTH' and 'DAY TO SECOND' are supported).

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  109. def visitIntervalLiteral(ctx: IntervalLiteralContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  110. def visitIntervalValue(ctx: IntervalValueContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  111. def visitJoinCriteria(ctx: JoinCriteriaContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  112. def visitJoinRelation(ctx: JoinRelationContext): LogicalPlan

    Permalink

    Create a joins between two or more logical plans.

    Create a joins between two or more logical plans.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  113. def visitJoinType(ctx: JoinTypeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  114. def visitLateralView(ctx: LateralViewContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  115. def visitLoadData(ctx: LoadDataContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  116. def visitLocationSpec(ctx: LocationSpecContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  117. def visitLogicalBinary(ctx: LogicalBinaryContext): Expression

    Permalink

    Combine a number of boolean expressions into a balanced expression tree.

    Combine a number of boolean expressions into a balanced expression tree. These expressions are either combined by a logical And or a logical Or.

    A balanced binary tree is created because regular left recursive trees cause considerable performance degradations and can cause stack overflows.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  118. def visitLogicalNot(ctx: LogicalNotContext): Expression

    Permalink

    Invert a boolean expression.

    Invert a boolean expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  119. def visitLooseIdentifier(ctx: LooseIdentifierContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  120. def visitMultiInsertQuery(ctx: MultiInsertQueryContext): LogicalPlan

    Permalink

    Create a logical plan which allows for multiple inserts using one 'from' statement.

    Create a logical plan which allows for multiple inserts using one 'from' statement. These queries have the following SQL form:

    [WITH cte...]?
    FROM src
    [INSERT INTO tbl1 SELECT *]+

    For example:

    FROM db.tbl1 A
    INSERT INTO dbo.tbl1 SELECT * WHERE A.value = 10 LIMIT 5
    INSERT INTO dbo.tbl2 SELECT * WHERE A.value = 12

    This (Hive) feature cannot be combined with set-operators.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  121. def visitMultiInsertQueryBody(ctx: MultiInsertQueryBodyContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  122. def visitNamedExpression(ctx: NamedExpressionContext): Expression

    Permalink

    Create an aliased expression if an alias is specified.

    Create an aliased expression if an alias is specified. Both single and multi-aliases are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  123. def visitNamedExpressionSeq(ctx: NamedExpressionSeqContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  124. def visitNamedQuery(ctx: NamedQueryContext): SubqueryAlias

    Permalink

    Create a named logical plan.

    Create a named logical plan.

    This is only used for Common Table Expressions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  125. def visitNamedWindow(ctx: NamedWindowContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  126. def visitNestedConstantList(ctx: NestedConstantListContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  127. def visitNonOptionalPartitionSpec(ctx: PartitionSpecContext): Map[String, String]

    Permalink

    Create a partition specification map without optional values.

    Create a partition specification map without optional values.

    Attributes
    protected
  128. def visitNonReserved(ctx: NonReservedContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  129. def visitNullLiteral(ctx: NullLiteralContext): Literal

    Permalink

    Create a NULL literal expression.

    Create a NULL literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  130. def visitNumericLiteral(ctx: NumericLiteralContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  131. def visitOrderedIdentifier(ctx: OrderedIdentifierContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  132. def visitOrderedIdentifierList(ctx: OrderedIdentifierListContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  133. def visitParenthesizedExpression(ctx: ParenthesizedExpressionContext): Expression

    Permalink

    Create an expression for an expression between parentheses.

    Create an expression for an expression between parentheses. This is need because the ANTLR visitor cannot automatically convert the nested context into an expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  134. def visitPartitionSpec(ctx: PartitionSpecContext): Map[String, Option[String]]

    Permalink

    Create a partition specification map.

    Create a partition specification map.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  135. def visitPartitionSpecLocation(ctx: PartitionSpecLocationContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  136. def visitPartitionVal(ctx: PartitionValContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  137. def visitPredicate(ctx: PredicateContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  138. def visitPredicateOperator(ctx: PredicateOperatorContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  139. def visitPredicated(ctx: PredicatedContext): Expression

    Permalink

    Create a predicated expression.

    Create a predicated expression. A predicated expression is a normal expression with a predicate attached to it, for example:

    a + 1 IS NULL
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  140. def visitPrimitiveDataType(ctx: PrimitiveDataTypeContext): DataType

    Permalink

    Resolve/create a primitive type.

    Resolve/create a primitive type.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  141. def visitQualifiedName(ctx: QualifiedNameContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  142. def visitQuery(ctx: QueryContext): LogicalPlan

    Permalink

    Create a top-level plan with Common Table Expressions.

    Create a top-level plan with Common Table Expressions.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  143. def visitQueryOrganization(ctx: QueryOrganizationContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  144. def visitQueryPrimaryDefault(ctx: QueryPrimaryDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  145. def visitQuerySpecification(ctx: QuerySpecificationContext): LogicalPlan

    Permalink

    Create a logical plan using a query specification.

    Create a logical plan using a query specification.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  146. def visitQueryTermDefault(ctx: QueryTermDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  147. def visitQuotedIdentifier(ctx: QuotedIdentifierContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  148. def visitQuotedIdentifierAlternative(ctx: QuotedIdentifierAlternativeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  149. def visitRefreshTable(ctx: RefreshTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  150. def visitRelationDefault(ctx: RelationDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  151. def visitRenameTable(ctx: RenameTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  152. def visitRenameTablePartition(ctx: RenameTablePartitionContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  153. def visitResource(ctx: ResourceContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  154. def visitRowConstructor(ctx: RowConstructorContext): Expression

    Permalink

    Create a CreateStruct expression.

    Create a CreateStruct expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  155. def visitRowFormatDelimited(ctx: RowFormatDelimitedContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  156. def visitRowFormatSerde(ctx: RowFormatSerdeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  157. def visitSample(ctx: SampleContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  158. def visitScientificDecimalLiteral(ctx: ScientificDecimalLiteralContext): Literal

    Permalink

    Create a double literal for a number denoted in scientific notation.

    Create a double literal for a number denoted in scientific notation.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  159. def visitSearchedCase(ctx: SearchedCaseContext): Expression

    Permalink

    Create a condition based CaseWhen expression.

    Create a condition based CaseWhen expression. This has the following SQL syntax:

    CASE
     WHEN [predicate] THEN [expression]
     ...
     ELSE [expression]
    END
    ctx

    the parse tree

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  160. def visitSetConfiguration(ctx: SetConfigurationContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  161. def visitSetDatabaseProperties(ctx: SetDatabasePropertiesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  162. def visitSetOperation(ctx: SetOperationContext): LogicalPlan

    Permalink

    Connect two queries by a Set operator.

    Connect two queries by a Set operator.

    Supported Set operators are: - UNION [DISTINCT] - UNION ALL - EXCEPT [DISTINCT] - INTERSECT [DISTINCT]

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  163. def visitSetQuantifier(ctx: SetQuantifierContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  164. def visitSetTableLocation(ctx: SetTableLocationContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  165. def visitSetTableProperties(ctx: SetTablePropertiesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  166. def visitSetTableSerDe(ctx: SetTableSerDeContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  167. def visitShowColumns(ctx: ShowColumnsContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  168. def visitShowCreateTable(ctx: ShowCreateTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  169. def visitShowDatabases(ctx: ShowDatabasesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  170. def visitShowFunctions(ctx: ShowFunctionsContext): LogicalPlan

    Permalink

    Create a plan for a SHOW FUNCTIONS command.

    Create a plan for a SHOW FUNCTIONS command.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  171. def visitShowPartitions(ctx: ShowPartitionsContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  172. def visitShowTables(ctx: ShowTablesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  173. def visitShowTblProperties(ctx: ShowTblPropertiesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  174. def visitSimpleCase(ctx: SimpleCaseContext): Expression

    Permalink

    Create a value based CaseWhen expression.

    Create a value based CaseWhen expression. This has the following SQL form:

    CASE [expression]
     WHEN [value] THEN [expression]
     ...
     ELSE [expression]
    END
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  175. def visitSingleDataType(ctx: SingleDataTypeContext): DataType

    Permalink
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  176. def visitSingleExpression(ctx: SingleExpressionContext): Expression

    Permalink
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  177. def visitSingleInsertQuery(ctx: SingleInsertQueryContext): LogicalPlan

    Permalink

    Create a logical plan for a regular (single-insert) query.

    Create a logical plan for a regular (single-insert) query.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  178. def visitSingleStatement(ctx: SingleStatementContext): LogicalPlan

    Permalink
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  179. def visitSingleTableIdentifier(ctx: SingleTableIdentifierContext): TableIdentifier

    Permalink
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  180. def visitSkewSpec(ctx: SkewSpecContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  181. def visitSmallIntLiteral(ctx: SmallIntLiteralContext): Literal

    Permalink

    Create a Short Literal expression.

    Create a Short Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  182. def visitSortItem(ctx: SortItemContext): SortOrder

    Permalink

    Create a SortOrder expression.

    Create a SortOrder expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  183. def visitStar(ctx: StarContext): Expression

    Permalink

    Create a star (i.e.

    Create a star (i.e. all) expression; this selects all elements (in the specified object). Both un-targeted (global) and targeted aliases are supported.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  184. def visitStatementDefault(ctx: StatementDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  185. def visitStorageHandler(ctx: StorageHandlerContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  186. def visitStringConstant(ctx: ConstantContext): String

    Permalink

    Convert a constant of any type into a string.

    Convert a constant of any type into a string. This is typically used in DDL commands, and its main purpose is to prevent slight differences due to back to back conversions i.e.: String -> Literal -> String.

    Attributes
    protected
  187. def visitStringLiteral(ctx: StringLiteralContext): Literal

    Permalink

    Create a String literal expression.

    Create a String literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  188. def visitSubquery(ctx: SubqueryContext): LogicalPlan

    Permalink

    Create a logical plan for a sub-query.

    Create a logical plan for a sub-query.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  189. def visitSubqueryExpression(ctx: SubqueryExpressionContext): Expression

    Permalink

    Create a ScalarSubquery expression.

    Create a ScalarSubquery expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  190. def visitSubscript(ctx: SubscriptContext): Expression

    Permalink

    Create an UnresolvedExtractValue expression, this is used for subscript access to an array.

    Create an UnresolvedExtractValue expression, this is used for subscript access to an array.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  191. def visitTable(ctx: TableContext): LogicalPlan

    Permalink

    Create an un-aliased table reference.

    Create an un-aliased table reference. This is typically used for top-level table references, for example:

    INSERT INTO db.tbl2
    TABLE db.tbl1
    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  192. def visitTableFileFormat(ctx: TableFileFormatContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  193. def visitTableIdentifier(ctx: TableIdentifierContext): TableIdentifier

    Permalink

    Create a TableIdentifier from a 'tableName' or 'databaseName'.'tableName' pattern.

    Create a TableIdentifier from a 'tableName' or 'databaseName'.'tableName' pattern.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  194. def visitTableName(ctx: TableNameContext): LogicalPlan

    Permalink

    Create an aliased table reference.

    Create an aliased table reference. This is typically used in FROM clauses.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  195. def visitTableProperty(ctx: TablePropertyContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  196. def visitTablePropertyKey(ctx: TablePropertyKeyContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  197. def visitTablePropertyList(ctx: TablePropertyListContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  198. def visitTableProvider(ctx: TableProviderContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  199. def visitTerminal(arg0: TerminalNode): AnyRef

    Permalink
    Definition Classes
    AbstractParseTreeVisitor → ParseTreeVisitor
  200. def visitTinyIntLiteral(ctx: TinyIntLiteralContext): Literal

    Permalink

    Create a Byte Literal expression.

    Create a Byte Literal expression.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  201. def visitTruncateTable(ctx: TruncateTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  202. def visitTypeConstructor(ctx: TypeConstructorContext): Literal

    Permalink

    Create a typed Literal expression.

    Create a typed Literal expression. A typed literal has the following SQL syntax:

    [TYPE] '[VALUE]'

    Currently Date and Timestamp typed literals are supported.

    TODO what the added value of this over casting?

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  203. def visitUncacheTable(ctx: UncacheTableContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  204. def visitUnquotedIdentifier(ctx: UnquotedIdentifierContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  205. def visitUnsetTableProperties(ctx: UnsetTablePropertiesContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  206. def visitUnsupportedHiveNativeCommands(ctx: UnsupportedHiveNativeCommandsContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  207. def visitUse(ctx: UseContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  208. def visitValueExpressionDefault(ctx: ValueExpressionDefaultContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  209. def visitWhenClause(ctx: WhenClauseContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  210. def visitWindowDef(ctx: WindowDefContext): WindowSpecDefinition

    Permalink

    Create a window definition, i.e.

    Create a window definition, i.e. WindowSpecDefinition.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  211. def visitWindowFrame(ctx: WindowFrameContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  212. def visitWindowRef(ctx: WindowRefContext): WindowSpecReference

    Permalink

    Create a reference to a window frame, i.e.

    Create a reference to a window frame, i.e. WindowSpecReference.

    Definition Classes
    AstBuilderSqlBaseBaseVisitorSqlBaseVisitor
  213. def visitWindows(ctx: WindowsContext): AnyRef

    Permalink
    Definition Classes
    SqlBaseBaseVisitorSqlBaseVisitor
  214. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  215. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  216. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  217. def withScriptIOSchema(ctx: QuerySpecificationContext, inRowFormat: RowFormatContext, recordWriter: Token, outRowFormat: RowFormatContext, recordReader: Token, schemaLess: Boolean): ScriptInputOutputSchema

    Permalink

    Create a (Hive based) ScriptInputOutputSchema.

    Create a (Hive based) ScriptInputOutputSchema.

    Attributes
    protected

Inherited from Logging

Inherited from SqlBaseBaseVisitor[AnyRef]

Inherited from SqlBaseVisitor[AnyRef]

Inherited from AbstractParseTreeVisitor[AnyRef]

Inherited from ParseTreeVisitor[AnyRef]

Inherited from AnyRef

Inherited from Any

Ungrouped