class SubqueryExpressionResolver extends CoercesExpressionTypes
SubqueryExpressionResolver resolves specific SubqueryExpressions, such as ScalarSubquery, ListQuery, and Exists.
- Alphabetic
- By Inheritance
- SubqueryExpressionResolver
- CoercesExpressionTypes
- SQLConfHelper
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new SubqueryExpressionResolver(expressionResolver: ExpressionResolver, resolver: Resolver)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val ansiTransformations: Transformations
- Attributes
- protected
- Definition Classes
- CoercesExpressionTypes
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- def coerceExpressionTypes(expression: Expression, expressionTreeTraversal: ExpressionTreeTraversal): Expression
Coerces the expression types by applying necessary transformations on the expression and its children.
Coerces the expression types by applying necessary transformations on the expression and its children. Because fixed-point sometimes resolves type coercion in multiple passes, we apply each provided transformation twice, cyclically, to ensure that types are resolved. For example in a query like:
SELECT '1' + '1'
fixed-point analyzer requires two passes to resolve types.
In the end, we apply DefaultCollationTypeCoercion. See DefaultCollationTypeCoercion doc for more info.
Additionally, we copy the tags and origin in case the call to this method didn't come from ExpressionResolver, where they are copied generically.
- Definition Classes
- CoercesExpressionTypes
- def conf: SQLConf
The active config object within the current scope.
The active config object within the current scope. See SQLConf.get for more information.
- Definition Classes
- SQLConfHelper
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val nonAnsiTransformations: Transformations
- Attributes
- protected
- Definition Classes
- CoercesExpressionTypes
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def resolveExists(unresolvedExists: Exists): Expression
Resolve Exists subquery:
Resolve Exists subquery:
- Resolve the subquery plan;
- Get outer references;
- Type coerce it;
- Validate it.
- def resolveInSubquery(unresolvedInSubquery: InSubquery): Expression
Resolve InSubquery:
Resolve InSubquery:
- Resolve the underlying ListQuery;
- Resolve the values;
- Type coerce it;
- Validate it.
- def resolveListQuery(unresolvedListQuery: ListQuery): Expression
Resolve ListSubquery, which is always a child of the InSubquery.
- def resolveScalarSubquery(unresolvedScalarSubquery: ScalarSubquery): Expression
Resolve ScalarSubquery:
Resolve ScalarSubquery:
- Resolve the subquery plan;
- Get outer references;
- Type coerce it;
- Validate it.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def withSQLConf[T](pairs: (String, String)*)(f: => T): T
Sets all SQL configurations specified in
pairs, callsf, and then restores all SQL configurations.Sets all SQL configurations specified in
pairs, callsf, and then restores all SQL configurations.- Attributes
- protected
- Definition Classes
- SQLConfHelper
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)