SubqueryExpression Expressions¶
SubqueryExpression
is an extension of the PlanExpression abstraction for subquery expressions with logical plans (for a subquery).
Contract¶
withNewPlan¶
withNewPlan(
plan: LogicalPlan): SubqueryExpression
Note
withNewPlan
is part of the PlanExpression abstraction and is defined as follows:
withNewPlan(plan: T): PlanExpression[T]
The purpose of this override method is to change the input and output generic types to the concrete LogicalPlan and SubqueryExpression
, respectively.
Implementations¶
Creating Instance¶
SubqueryExpression
takes the following to be created:
- Subquery logical plan
- Child Expressions
- Expression ID
Abstract Class
SubqueryExpression
is an abstract class and cannot be created directly. It is created indirectly for the concrete SubqueryExpressions.
References¶
references: AttributeSet
references
is...FIXME
references
is part of the Expression abstraction.
resolved Predicate¶
resolved: Boolean
resolved
is true
when all of the following hold:
resolved
is part of the Expression abstraction.
hasInOrCorrelatedExistsSubquery Utility¶
hasInOrCorrelatedExistsSubquery
...FIXME
hasInOrCorrelatedExistsSubquery
is used when RewritePredicateSubquery logical optimization is executed.
hasCorrelatedSubquery Utility¶
hasCorrelatedSubquery
...FIXME
hasCorrelatedSubquery
is used when:
EliminateOuterJoin
logical optimization is executedSubquery
is created (from an expression)Filter
logical operator is requested forvalidConstraints
hasSubquery Utility¶
hasSubquery(
e: Expression): Boolean
hasSubquery
...FIXME
hasSubquery
is used when...FIXME