Package org.apache.calcite.sql.validate
Class OverScope
- java.lang.Object
-
- org.apache.calcite.sql.validate.DelegatingScope
-
- org.apache.calcite.sql.validate.ListScope
-
- org.apache.calcite.sql.validate.OverScope
-
- All Implemented Interfaces:
SqlValidatorScope
public class OverScope extends ListScope
The name-resolution scope of a OVER clause. The objects visible are those in the parameters found on the left side of the over clause, and objects inherited from the parent scope.This object is both a
SqlValidatorScope
only. In the querySELECT name FROM ( SELECT * FROM emp OVER ( ORDER BY empno RANGE BETWEEN 2 PRECEDING AND 2 FOLLOWING))
We need to use the
OverScope
as aSqlValidatorNamespace
when resolving names used in the window specification.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.calcite.sql.validate.SqlValidatorScope
SqlValidatorScope.EmptyPath, SqlValidatorScope.Path, SqlValidatorScope.Resolve, SqlValidatorScope.Resolved, SqlValidatorScope.ResolvedImpl, SqlValidatorScope.Step
-
-
Constructor Summary
Constructors Constructor Description OverScope(SqlValidatorScope parent, SqlCall overCall)
Creates a scope corresponding to a SELECT clause.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SqlMonotonicity
getMonotonicity(SqlNode expr)
Returns whether an expression is monotonic in this scope.SqlNode
getNode()
Returns the root node of this scope.-
Methods inherited from class org.apache.calcite.sql.validate.ListScope
addChild, findAliases, findAllColumnNames, findQualifyingTableName, findQualifyingTableNames, getChildNames, getChildren, resolve, resolveColumn
-
Methods inherited from class org.apache.calcite.sql.validate.DelegatingScope
addColumnNames, fullyQualify, getOperandScope, getOrderList, getParent, getTableNamespace, getValidator, lookupWindow, nullifyType, resolveInNamespace, resolveTable, validateExpr
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.sql.validate.SqlValidatorScope
isWithin
-
-
-
-
Field Detail
-
overCall
private final SqlCall overCall
-
-
Constructor Detail
-
OverScope
OverScope(SqlValidatorScope parent, SqlCall overCall)
Creates a scope corresponding to a SELECT clause.- Parameters:
parent
- Parent scope, or nulloverCall
- Call to OVER operator
-
-
Method Detail
-
getNode
public SqlNode getNode()
Description copied from interface:SqlValidatorScope
Returns the root node of this scope. Never null.
-
getMonotonicity
public SqlMonotonicity getMonotonicity(SqlNode expr)
Description copied from interface:SqlValidatorScope
Returns whether an expression is monotonic in this scope. For example, if the scope has previously been sorted by columns X, Y, then X is monotonic in this scope, but Y is not.- Specified by:
getMonotonicity
in interfaceSqlValidatorScope
- Overrides:
getMonotonicity
in classDelegatingScope
-
-