public class AggregatingSelectScope extends DelegatingScope implements AggregatingScope
The same set of identifiers are in scope, but it won't allow access to identifiers or expressions which are not group-expressions.
| Modifier and Type | Field and Description |
|---|---|
com.google.common.collect.ImmutableList<SqlNode> |
groupExprList
Use after construction is complete.
|
Map<Integer,Integer> |
groupExprProjection |
ImmutableBitSet |
groupSet |
com.google.common.collect.ImmutableList<ImmutableBitSet> |
groupSets |
boolean |
indicator |
parent, validator| Modifier and Type | Method and Description |
|---|---|
boolean |
checkAggregateExpr(SqlNode expr,
boolean deep)
Checks whether an expression is constant within the GROUP BY clause.
|
SqlNode |
getNode()
Returns the root node of this scope.
|
SqlValidatorScope |
getOperandScope(SqlCall call)
Returns the scope within which operands to a call are to be validated.
|
boolean |
isGroupingExpr(SqlNode operand)
Returns whether a given expression is equal to one of the grouping
expressions.
|
boolean |
isNullable(int i)
Returns whether a field should be nullable due to grouping sets.
|
int |
lookupGroupingExpr(SqlNode operand) |
RelDataType |
nullifyType(SqlNode node,
RelDataType type)
Converts the type of an expression to nullable, if the context
warrants it.
|
void |
validateExpr(SqlNode expr)
Performs any scope-specific validation of an expression.
|
addChild, addColumnNames, findAliases, findAllColumnNames, findQualifyingTableName, fullyQualify, getMonotonicity, getOrderList, getParent, getTableNamespace, getValidator, lookupWindow, resolve, resolveColumnclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddChild, findAliases, findAllColumnNames, findQualifyingTableName, fullyQualify, getMonotonicity, getOrderList, getTableNamespace, getValidator, lookupWindow, resolve, resolveColumnpublic final com.google.common.collect.ImmutableList<SqlNode> groupExprList
temporaryGroupExprList towards the end of the constructor.public final ImmutableBitSet groupSet
public final com.google.common.collect.ImmutableList<ImmutableBitSet> groupSets
public final boolean indicator
public SqlNode getNode()
SqlValidatorScopegetNode in interface SqlValidatorScopepublic boolean isNullable(int i)
public RelDataType nullifyType(SqlNode node, RelDataType type)
SqlValidatorScopenullifyType in interface SqlValidatorScopenullifyType in class DelegatingScopepublic SqlValidatorScope getOperandScope(SqlCall call)
SqlValidatorScopegetOperandScope in interface SqlValidatorScopegetOperandScope in class DelegatingScopecall - Callpublic boolean checkAggregateExpr(SqlNode expr, boolean deep)
AggregatingScopecheckAggregateExpr in interface AggregatingScopepublic void validateExpr(SqlNode expr)
SqlValidatorScopevalidateExpr in interface SqlValidatorScopevalidateExpr in class DelegatingScopepublic boolean isGroupingExpr(SqlNode operand)
public int lookupGroupingExpr(SqlNode operand)
Copyright © 2012–2015 The Apache Software Foundation. All rights reserved.