public class CollectNamespace extends AbstractNamespace
Examples:
SELECT deptno, COLLECT(empno) FROM emp GROUP BY deptno,
SELECT * FROM (TABLE getEmpsInDept(30)).
NOTE: jhyde, 2006/4/24: These days, this class seems to be used
exclusively for the MULTISET construct.
CollectScope| Modifier and Type | Field and Description |
|---|---|
private SqlCall |
child |
private SqlValidatorScope |
scope |
enclosingNode, rowType, type, validator| Constructor and Description |
|---|
CollectNamespace(SqlCall child,
SqlValidatorScope scope,
SqlNode enclosingNode)
Creates a CollectNamespace.
|
| Modifier and Type | Method and Description |
|---|---|
SqlNode |
getNode()
Returns the parse tree node at the root of this namespace.
|
SqlValidatorScope |
getScope() |
protected RelDataType |
validateImpl(RelDataType targetRowType)
Validates this scope and returns the type of the records it returns.
|
convertToStruct, fieldExists, getEnclosingNode, getMonotonicExprs, getMonotonicity, getRowType, getRowTypeSansSystemColumns, getTable, getType, getValidator, isWrapperFor, lookupChild, makeNullable, resolve, setType, supportsModality, toStruct, translate, unwrap, validateprivate final SqlCall child
private final SqlValidatorScope scope
CollectNamespace(SqlCall child, SqlValidatorScope scope, SqlNode enclosingNode)
child - Parse tree nodescope - ScopeenclosingNode - Enclosing parse tree nodeprotected RelDataType validateImpl(RelDataType targetRowType)
AbstractNamespaceAbstractNamespace.validate(org.apache.calcite.rel.type.RelDataType), which uses the
AbstractNamespace.status field to protect against cycles.validateImpl in class AbstractNamespacetargetRowType - Desired row type, must not be null, may be the data
type 'unknown'.public SqlNode getNode()
SqlValidatorNamespaceTableNamespacepublic SqlValidatorScope getScope()
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.