public class SubqueryList extends QueryTreeNodeVector
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX| Constructor and Description |
|---|
SubqueryList() |
| Modifier and Type | Method and Description |
|---|---|
void |
addSubqueryNode(SubqueryNode subqueryNode)
Add a subquery to the list.
|
(package private) void |
decrementLevel(int decrement)
Decrement (query block) level (0-based) for
all of the tables in this subquery list.
|
void |
markHavingSubqueries()
Mark all of the subqueries in this
list as being part of a having clause,
so we can avoid flattenning later.
|
void |
markWhereSubqueries()
Mark all of the subqueries in this list as being part of a where clause
so we can avoid flattening later if needed.
|
void |
modifyAccessPaths()
Modify the access paths for all subqueries in this list.
|
void |
optimize(DataDictionary dataDictionary,
double outerRows)
Optimize the subqueries in this list.
|
boolean |
referencesSessionSchema()
Return true if the node references SESSION schema tables (temporary or permanent)
|
boolean |
referencesTarget(java.lang.String name,
boolean baseTable)
Search to see if a query references the specifed table name.
|
void |
setPointOfAttachment(int pointOfAttachment)
Set the point of attachment in all subqueries in this list.
|
acceptChildren, addElement, destructiveAppend, elementAt, indexOf, insertElementAt, nondestructiveAppend, printSubNodes, remove, removeAllElements, removeElement, removeElementAt, setElementAt, sizeaccept, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, foundString, generate, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, init, init, init, isAtomic, isInstanceOf, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, orReliability, parseStatement, printLabel, resolveTableToSynonym, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, stackPrint, toString, treePrint, treePrint, verifyClassExistpublic void addSubqueryNode(SubqueryNode subqueryNode) throws StandardException
subqueryNode - A SubqueryNode to add to the listStandardExceptionpublic void optimize(DataDictionary dataDictionary, double outerRows) throws StandardException
dataDictionary - The data dictionary to use for optimizationouterRows - The optimizer's estimate of the number of
times this subquery will be executed.StandardException - Thrown on errorpublic void modifyAccessPaths()
throws StandardException
StandardException - Thrown on errorResultSetNode.modifyAccessPaths()public boolean referencesTarget(java.lang.String name,
boolean baseTable)
throws StandardException
name - Table name (String) to search for.baseTable - Whether or not name is for a base tableStandardException - Thrown on errorpublic boolean referencesSessionSchema()
throws StandardException
referencesSessionSchema in class QueryTreeNodeStandardException - Thrown on errorpublic void setPointOfAttachment(int pointOfAttachment)
throws StandardException
pointOfAttachment - The point of attachmentStandardException - Thrown on errorvoid decrementLevel(int decrement)
decrement - The amount to decrement by.public void markHavingSubqueries()
public void markWhereSubqueries()
Apache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.