|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.impl.sql.compile.QueryTreeNode
org.apache.derby.impl.sql.compile.QueryTreeNodeVector
org.apache.derby.impl.sql.compile.SubqueryList
A SubqueryList represents a list of subquerys within a specific clause (select, where or having) in a DML statement. It extends QueryTreeNodeVector.
Field Summary |
Fields inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode |
AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX, beginOffset, endOffset |
Constructor Summary | |
SubqueryList()
|
Method Summary | |
Visitable |
accept(Visitor v)
Accept a visitor, and call v.visit() on child nodes as necessary. |
void |
addElement(QueryTreeNode qt)
|
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 |
destructiveAppend(QueryTreeNodeVector qtnv)
|
QueryTreeNode |
elementAt(int index)
|
(package private) int |
indexOf(QueryTreeNode qt)
|
(package private) void |
insertElementAt(QueryTreeNode qt,
int index)
|
void |
modifyAccessPaths()
Modify the access paths for all subqueries in this list. |
void |
nondestructiveAppend(QueryTreeNodeVector qtnv)
|
void |
optimize(DataDictionary dataDictionary,
double outerRows)
Optimize the subqueries in this list. |
void |
preprocess(int numTables,
FromList outerFromList,
SubqueryList outerSubqueryList,
PredicateList outerPredicateList)
Preprocess a SubqueryList. |
void |
printSubNodes(int depth)
Prints the sub-nodes of this object. |
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. |
(package private) java.lang.Object |
remove(int index)
|
(package private) void |
removeAllElements()
|
(package private) void |
removeElement(QueryTreeNode qt)
|
(package private) void |
removeElementAt(int index)
|
(package private) void |
setElementAt(QueryTreeNode qt,
int index)
|
void |
setPointOfAttachment(int pointOfAttachment)
Set the point of attachment in all subqueries in this list. |
int |
size()
|
java.lang.String |
toString()
Format this list as a string We can simply iterate through the list. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public SubqueryList()
Method Detail |
public void printSubNodes(int depth)
printSubNodes
in class QueryTreeNode
depth
- The depth of this node in the tree
public void addSubqueryNode(SubqueryNode subqueryNode) throws StandardException
subqueryNode
- A SubqueryNode to add to the list
StandardException
- Thrown on errorpublic void preprocess(int numTables, FromList outerFromList, SubqueryList outerSubqueryList, PredicateList outerPredicateList) throws StandardException
numTables
- Number of tables in the DML StatementouterFromList
- FromList from outer query blockouterSubqueryList
- SubqueryList from outer query blockouterPredicateList
- PredicateList from outer query block
StandardException
- Thrown on errorpublic 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 table
StandardException
- Thrown on errorpublic boolean referencesSessionSchema() throws StandardException
referencesSessionSchema
in class QueryTreeNode
StandardException
- Thrown on errorpublic void setPointOfAttachment(int pointOfAttachment) throws StandardException
pointOfAttachment
- The point of attachment
StandardException
- Thrown on errorvoid decrementLevel(int decrement)
decrement
- The amount to decrement by.
public final int size()
public QueryTreeNode elementAt(int index)
public final void addElement(QueryTreeNode qt)
final void removeElementAt(int index)
final void removeElement(QueryTreeNode qt)
final java.lang.Object remove(int index)
final int indexOf(QueryTreeNode qt)
final void setElementAt(QueryTreeNode qt, int index)
public void destructiveAppend(QueryTreeNodeVector qtnv)
public void nondestructiveAppend(QueryTreeNodeVector qtnv)
final void removeAllElements()
final void insertElementAt(QueryTreeNode qt, int index)
public java.lang.String toString()
toString
in class QueryTreeNode
public Visitable accept(Visitor v) throws StandardException
accept
in interface Visitable
accept
in class QueryTreeNode
v
- the visitor
StandardException
- on error
|
Built on Mon 2007-06-04 09:58:47+0400, from revision ??? | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |