Package org.apache.calcite.rex
Class RexOver
java.lang.Object
org.apache.calcite.rex.RexNode
org.apache.calcite.rex.RexCall
org.apache.calcite.rex.RexOver
Call to an aggregate function over a window.
-
Field Summary
-
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.clone(RelDataType type, List<RexNode> operands) Creates a new call to the same operator with different operands.protected StringcomputeDigest(boolean withType) static booleancontainsOver(List<? extends RexNode> exprs, @Nullable RexNode condition) Returns whether an expression list contains an OVER clause.static booleancontainsOver(RexNode expr) Returns whether an expression contains an OVER clause.static booleancontainsOver(RexProgram program) Returns whether a program contains an OVER clause.booleanReturns the aggregate operator for this expression.inthashCode()booleanbooleanintReturns the number of nodes in this expression.Methods inherited from class org.apache.calcite.rex.RexCall
appendOperands, getKind, getOperands, getOperator, getParserPosition, getType, isAlwaysFalse, isAlwaysTrue, operandCount, toString
-
Method Details
-
getAggOperator
Returns the aggregate operator for this expression. -
getWindow
-
isDistinct
public boolean isDistinct() -
ignoreNulls
public boolean ignoreNulls() -
computeDigest
- Overrides:
computeDigestin classRexCall
-
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. -
nodeCount
public int nodeCount()Description copied from class:RexNodeReturns the number of nodes in this expression.Leaf nodes, such as
RexInputReforRexLiteral, have a count of 1. Calls have a count of 1 plus the sum of their operands.Node count is a measure of expression complexity that is used by some planner rules to prevent deeply nested expressions.
-
containsOver
Returns whether an expression contains an OVER clause. -
containsOver
Returns whether a program contains an OVER clause. -
containsOver
Returns whether an expression list contains an OVER clause. -
clone
Description copied from class:RexCallCreates a new call to the same operator with different operands. -
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)
-