org.eigenbase.sql.validate
Interface AggregatingScope

All Superinterfaces:
SqlValidatorScope
All Known Implementing Classes:
AggregatingSelectScope

public interface AggregatingScope
extends SqlValidatorScope

An extension to the SqlValidatorScope interface which indicates that the scope is aggregating.

A scope which is aggregating must implement this interface. Such a scope will return the same set of identifiers as its parent scope, but some of those identifiers may not be accessible because they are not in the GROUP BY clause.

Since:
Mar 25, 2003
Version:
$Id: //open/dev/farrago/src/org/eigenbase/sql/validate/AggregatingScope.java#9 $
Author:
jhyde

Method Summary
 boolean checkAggregateExpr(SqlNode expr, boolean deep)
          Checks whether an expression is constant within the GROUP BY clause.
 
Methods inherited from interface org.eigenbase.sql.validate.SqlValidatorScope
addChild, findAliases, findAllColumnNames, findQualifyingTableName, fullyQualify, getMonotonicity, getNode, getOperandScope, getOrderList, getValidator, lookupWindow, resolve, resolveColumn, validateExpr
 

Method Detail

checkAggregateExpr

boolean checkAggregateExpr(SqlNode expr,
                           boolean deep)
Checks whether an expression is constant within the GROUP BY clause. If the expression completely matches an expression in the GROUP BY clause, returns true. If the expression is constant within the group, but does not exactly match, returns false. If the expression is not constant, throws an exception. Examples: