Package org.apache.calcite.rex
Class RexSubQuery
java.lang.Object
org.apache.calcite.rex.RexNode
org.apache.calcite.rex.RexCall
org.apache.calcite.rex.RexSubQuery
Scalar expression that represents an IN, EXISTS or scalar sub-query.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescription<R,P> R accept(RexBiVisitor<R, P> visitor, P arg) Accepts a visitor with a payload, dispatching to the right overloadedRexBiVisitor.visitInputRef(RexInputRef, Object)visitXxx} method.<R> Raccept(RexVisitor<R> visitor) Accepts a visitor, dispatching to the right overloadedvisitXxxmethod.static RexSubQueryCreates an ARRAY sub-query.clone(RelDataType type, List<RexNode> operands) Creates a new call to the same operator with different operands.protected StringcomputeDigest(boolean withType) booleanstatic RexSubQueryCreates an EXISTS sub-query.inthashCode()static RexSubQueryCreates an IN sub-query.static RexSubQueryCreates a MAP sub-query.static RexSubQueryCreates a MULTISET sub-query.static RexSubQueryCreates a scalar sub-query.static RexSubQuerysome(RelNode rel, com.google.common.collect.ImmutableList<RexNode> nodes, SqlQuantifyOperator op) Creates a SOME sub-query.static RexSubQueryCreates an UNIQUE sub-query.Methods inherited from class org.apache.calcite.rex.RexCall
appendOperands, getKind, getOperands, getOperator, getParserPosition, getType, isAlwaysFalse, isAlwaysTrue, nodeCount, operandCount, toString
-
Field Details
-
rel
-
-
Method Details
-
in
Creates an IN sub-query. -
some
public static RexSubQuery some(RelNode rel, com.google.common.collect.ImmutableList<RexNode> nodes, SqlQuantifyOperator op) Creates a SOME sub-query.There is no ALL. For
x comparison ALL (sub-query)use insteadNOT (x inverse-comparison SOME (sub-query)). Ifcomparisonis>thennegated-comparisonis<=, and so forth.Also =SOME is rewritten into IN
-
exists
Creates an EXISTS sub-query. -
unique
Creates an UNIQUE sub-query. -
scalar
Creates a scalar sub-query. -
array
Creates an ARRAY sub-query. -
multiset
Creates a MULTISET sub-query. -
map
Creates a MAP sub-query. -
accept
Description copied from class:RexNodeAccepts a visitor, dispatching to the right overloadedvisitXxxmethod.Also see
RexUtil.apply(RexVisitor, java.util.List, RexNode), which applies a visitor to several expressions simultaneously. -
accept
Description copied from class:RexNodeAccepts a visitor with a payload, dispatching to the right overloadedRexBiVisitor.visitInputRef(RexInputRef, Object)visitXxx} method. -
computeDigest
- Overrides:
computeDigestin classRexCall
-
clone
Description copied from class:RexCallCreates a new call to the same operator with different operands. -
clone
-
equals
Description copied from class:RexNodeEvery node must implement
RexNode.equals(java.lang.Object)based on its content -
hashCode
public int hashCode()Description copied from class:RexNodeEvery node must implement
RexNode.hashCode()consistent withRexNode.equals(java.lang.Object)
-