| Modifier and Type | Field and Description |
|---|---|
| private String | |
| private TableName |
| Access | Constructor and Description |
|---|---|
| pack-priv | BaseColumnNode(String
The name of the column being referenced columnName, TableName The qualification for the column tableName, DataTypeDescriptor Data type descriptor for the column dtd, ContextManager Context manager cm)Constructor for a referenced column name |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | acceptChildren(Visitor
the visitor v)Overrides org. Accept a visitor on all child nodes. |
| pack-priv void | generateExpression(ExpressionClassBuilder
The ExpressionClassBuilder for the class being built acb, MethodBuilder The method the code to place the code mb)Overrides org. Do the code generation for this node. |
| pack-priv String | Returns: The name of this columnOverrides org. Get the name of this column |
| protected int | Returns: The variant type for the underlying expression.Overrides org. Return the variant type for the underlying expression. |
| pack-priv String | Returns: The schema name for this column's tableOverrides org. Get the user-supplied schema name for this column's table. |
| pack-priv String | Returns: The user-supplied name of this column. Null if no user- supplied name.Overrides org. Get the user-supplied table name of this column. |
| pack-priv boolean | isEquivalent(ValueNode
the node to compare this ValueNode against. o)Implements abstract org. Tests if this node is equivalent to the specified ValueNode. |
| public String | Returns: This object as a StringOverrides org. Convert this object to a String. |
| columnName | back to summary |
|---|---|
| private String columnName | |
| tableName | back to summary |
|---|---|
| private TableName tableName | |
| BaseColumnNode | back to summary |
|---|---|
| pack-priv BaseColumnNode(String columnName, TableName tableName, DataTypeDescriptor dtd, ContextManager cm) throws StandardException Constructor for a referenced column name
| |
| acceptChildren | back to summary |
|---|---|
| pack-priv void acceptChildren(Visitor v) throws StandardException Overrides org. Doc from org. Accept a visitor on all child nodes. All sub-classes that add fields
that should be visited, should override this method and call
| |
| generateExpression | back to summary |
|---|---|
| pack-priv void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException Overrides org. Do the code generation for this node. Should never be called.
| |
| getColumnName | back to summary |
|---|---|
| pack-priv String getColumnName() Overrides org. Get the name of this column | |
| getOrderableVariantType | back to summary |
|---|---|
| protected int getOrderableVariantType() Overrides org. Return the variant type for the underlying expression. The variant type can be: VARIANT - variant within a scan (method calls and non-static field access) SCAN_INVARIANT - invariant within a scan (column references from outer tables) QUERY_INVARIANT - invariant within the life of a query (constant expressions)
| |
| getSchemaName | back to summary |
|---|---|
| pack-priv String getSchemaName() throws StandardException Overrides org. Get the user-supplied schema name for this column's table. This will be null if the user did not supply a name (for example, select t.a from t). Another example for null return value (for example, select b.a from t as b). But for following query select app.t.a from t, this will return APP | |
| getTableName | back to summary |
|---|---|
| pack-priv String getTableName() Overrides org. Get the user-supplied table name of this column. This will be null if the user did not supply a name (for example, select a from t). The method will return B for this example, select b.a from t as b The method will return T for this example, select t.a from t | |
| isEquivalent | back to summary |
|---|---|
| pack-priv boolean isEquivalent(ValueNode o) Implements abstract org. Doc from org. Tests if this node is equivalent to the specified ValueNode. Two ValueNodes are considered equivalent if they will evaluate to the same value during query execution. This method provides basic expression matching facility for the derived class of ValueNode and it is used by the language layer to compare the node structural form of the two expressions for equivalence at bind phase. Note that it is not comparing the actual row values at runtime to produce a result; hence, when comparing SQL NULLs, they are considered to be equivalent and not unknown. One usage case of this method in this context is to compare the select column expression against the group by expression to check if they are equivalent. e.g.: SELECT c1+c2 FROM t1 GROUP BY c1+c2 In general, node equivalence is determined by the derived class of ValueNode. But they generally abide to the rules below:
| |
| toString | back to summary |
|---|---|
| public String toString() Overrides org. Convert this object to a String. See comments in QueryTreeNode.java for how this should be done for tree printing. | |