class SubqueryList extends QueryTreeNodeVector<SubqueryNode>
eltClass
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
Constructor and Description |
---|
SubqueryList(ContextManager cm) |
Modifier and Type | Method and Description |
---|---|
(package private) 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.
|
(package private) void |
markHavingSubqueries()
Mark all of the subqueries in this
list as being part of a having clause,
so we can avoid flattening later.
|
(package private) 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.
|
(package private) void |
modifyAccessPaths()
Modify the access paths for all subqueries in this list.
|
(package private) 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)
|
(package private) boolean |
referencesTarget(java.lang.String name,
boolean baseTable)
Search to see if a query references the specifed table name.
|
(package private) void |
setPointOfAttachment(int pointOfAttachment)
Set the point of attachment in all subqueries in this list.
|
acceptChildren, addElement, destructiveAppend, elementAt, indexOf, insertElementAt, iterator, nondestructiveAppend, printSubNodes, removeAllElements, removeElement, removeElementAt, setElementAt, size
accept, addTag, addUDTUsagePriv, addUDTUsagePriv, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, copyTagsFrom, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, generate, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContext, getContextManager, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getLongProperty, getNullNode, getOffsetOrderedNodes, getOptimizerFactory, getOptimizerTracer, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, getUDTDesc, isAtomic, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, optimizerTracingIsOn, orReliability, parseSearchCondition, parseStatement, printLabel, resolveTableToSynonym, setBeginOffset, setEndOffset, setRefActionInfo, stackPrint, taggedWith, toString, treePrint, treePrint, verifyClassExist
SubqueryList(ContextManager cm)
void addSubqueryNode(SubqueryNode subqueryNode) throws StandardException
subqueryNode
- A SubqueryNode to add to the listStandardException
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 errorvoid modifyAccessPaths() throws StandardException
StandardException
- Thrown on errorResultSetNode.modifyAccessPaths()
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 QueryTreeNode
StandardException
- Thrown on errorvoid setPointOfAttachment(int pointOfAttachment) throws StandardException
pointOfAttachment
- The point of attachmentStandardException
- Thrown on errorvoid decrementLevel(int decrement)
decrement
- The amount to decrement by.void markHavingSubqueries()
void markWhereSubqueries()
Apache Derby V10.13 Internals - Copyright © 2004,2016 The Apache Software Foundation. All Rights Reserved.