org.apache.derby.impl.sql.compile
Class QuantifiedUnaryOperatorNode
java.lang.Object
org.apache.derby.impl.sql.compile.QueryTreeNode
org.apache.derby.impl.sql.compile.ValueNode
org.apache.derby.impl.sql.compile.UnaryOperatorNode
org.apache.derby.impl.sql.compile.QuantifiedUnaryOperatorNode
- All Implemented Interfaces:
- Visitable
- public class QuantifiedUnaryOperatorNode
- extends UnaryOperatorNode
A QuantifiedUnaryOperatorNode represents a unary quantified predicate
that is used with a subquery, such as EXISTS and NOT EXISTS. Quantified
predicates all return Boolean values. All quantified operators will be
removed from the tree by the time we get to code generation - they will
be replaced by other constructs that can be compiled. For example,
an EXISTS node may be converted to a type of join.
- Author:
- Jeff Lichtman
Methods inherited from class org.apache.derby.impl.sql.compile.UnaryOperatorNode |
accept, bindParameter, bindUnaryOperator, categorize, constantExpression, generateExpression, getOperand, getOperatorString, getOrderableVariantType, getReceiverInterfaceName, init, init, isConstantExpression, preprocess, remapColumnReferencesToExpressions, setClause, setMethodName, setOperator, toString |
Methods inherited from class org.apache.derby.impl.sql.compile.ValueNode |
bindExpression, changeToCNF, checkIsBoolean, checkReliability, checkReliability, checkTopPredicatesForEqualsConditions, copyFields, eliminateNots, genEqualsFalseTree, generate, generateFilter, genIsNullTree, genSQLJavaSQLTree, getClause, getClone, getColumnName, getConstantValueAsObject, getDataValueFactory, getSchemaName, getSourceResultColumn, getTableName, getTablesReferenced, getTransformed, getTypeCompiler, getTypeId, getTypeServices, init, isBinaryEqualsOperatorNode, isBooleanFalse, isBooleanTrue, isCloneable, isParameterNode, isRelationalOperator, optimizableEqualityNode, putAndsOnTop, selectivity, setDescriptor, setTransformed, setType, verifyChangeToCNF, verifyEliminateNots, verifyPutAndsOnTop |
Methods inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode |
bind, convertDefaultNode, debugFlush, debugPrint, executeSchemaName, executeStatementName, formatNodeString, foundString, generate, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getRowEstimate, getSchemaDescriptor, getSchemaDescriptor, getSPSName, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, isAtomic, isInstanceOf, isSessionSchema, isSessionSchema, makeConstantAction, makeResultDescription, makeTableName, needsSavepoint, nodeHeader, optimize, parseQueryText, printLabel, referencesSessionSchema, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, treePrint, treePrint, verifyClassExist |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
EXISTS
public static final int EXISTS
- See Also:
- Constant Field Values
NOT_EXISTS
public static final int NOT_EXISTS
- See Also:
- Constant Field Values
operand
SubqueryNode operand
QuantifiedUnaryOperatorNode
public QuantifiedUnaryOperatorNode()
printSubNodes
public void printSubNodes(int depth)
- Prints the sub-nodes of this object. See QueryTreeNode.java for
how tree printing is supposed to work.
- Overrides:
printSubNodes
in class UnaryOperatorNode
- Parameters:
depth
- The depth of this node in the tree
- Returns:
- Nothing
bindExpression
public ValueNode bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.Vector aggregateVector)
throws StandardException
- Bind this expression. This means binding the sub-expressions,
as well as figuring out what the return type is for this expression.
- Overrides:
bindExpression
in class UnaryOperatorNode
- Parameters:
fromList
- The FROM list for the query this
expression is in, for binding columns.subqueryList
- The subquery list being built as we find SubqueryNodesaggregateVector
- The aggregate vector being built as we find AggregateNodes
- Returns:
- The new top of the expression tree.
- Throws:
StandardException
- Thrown on error
Apache Derby V10.0 Engine Documentation - Copyright © 1997,2004 The Apache Software Foundation or its licensors, as applicable.