Package com.mckoi.database
Class QueryPlan.FunctionalSelectNode
- java.lang.Object
-
- com.mckoi.database.QueryPlan.SingleQueryPlanNode
-
- com.mckoi.database.QueryPlan.FunctionalSelectNode
-
- All Implemented Interfaces:
QueryPlanNode,java.io.Serializable,java.lang.Cloneable
- Enclosing class:
- QueryPlan
public static class QueryPlan.FunctionalSelectNode extends QueryPlan.SingleQueryPlanNode
The node for performing a functional select operation on the child node. Some examples of this type of query are; CONCAT(a, ' ', b) > 'abba boh' TONUMBER(DATEFORMAT(a, 'yyyy')) > 2001 LOWER(a) < 'ook' The reason this is a separate node is because it is possible to exploit a functional indexes on a table with this node.The given expression MUST be of the form; 'function_expression' 'operator' 'constant'
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.mckoi.database.QueryPlan.SingleQueryPlanNode
child
-
-
Constructor Summary
Constructors Constructor Description FunctionalSelectNode(QueryPlanNode child, Expression exp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()Deep clone.java.util.ArrayListdiscoverCorrelatedVariables(int level, java.util.ArrayList list)Default implementation that discovers correlated variables for the given offset level.java.util.ArrayListdiscoverTableNames(java.util.ArrayList list)Default implementation delegates responsibility to child.Tableevaluate(QueryContext context)Evaluates the node and returns the result as a Table.-
Methods inherited from class com.mckoi.database.QueryPlan.SingleQueryPlanNode
child, debugString, titleString
-
-
-
-
Constructor Detail
-
FunctionalSelectNode
public FunctionalSelectNode(QueryPlanNode child, Expression exp)
-
-
Method Detail
-
evaluate
public Table evaluate(QueryContext context)
Description copied from interface:QueryPlanNodeEvaluates the node and returns the result as a Table. The VariableResolver resolves any outer variables
-
discoverTableNames
public java.util.ArrayList discoverTableNames(java.util.ArrayList list)
Description copied from class:QueryPlan.SingleQueryPlanNodeDefault implementation delegates responsibility to child.- Specified by:
discoverTableNamesin interfaceQueryPlanNode- Overrides:
discoverTableNamesin classQueryPlan.SingleQueryPlanNode
-
discoverCorrelatedVariables
public java.util.ArrayList discoverCorrelatedVariables(int level, java.util.ArrayList list)Description copied from class:QueryPlan.SingleQueryPlanNodeDefault implementation that discovers correlated variables for the given offset level.- Specified by:
discoverCorrelatedVariablesin interfaceQueryPlanNode- Overrides:
discoverCorrelatedVariablesin classQueryPlan.SingleQueryPlanNode
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionDescription copied from class:QueryPlan.SingleQueryPlanNodeDeep clone.- Specified by:
clonein interfaceQueryPlanNode- Overrides:
clonein classQueryPlan.SingleQueryPlanNode- Throws:
java.lang.CloneNotSupportedException
-
-