Package com.mckoi.database
Class QueryPlan.GroupNode
- java.lang.Object
-
- com.mckoi.database.QueryPlan.SingleQueryPlanNode
-
- com.mckoi.database.QueryPlan.GroupNode
-
- All Implemented Interfaces:
QueryPlanNode,java.io.Serializable,java.lang.Cloneable
- Enclosing class:
- QueryPlan
public static class QueryPlan.GroupNode extends QueryPlan.SingleQueryPlanNode
The node for performing a grouping operation on the columns of the child node. As well as grouping, any aggregate functions must also be defined with this plan.NOTE: The whole child is a group if columns is null.
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.mckoi.database.QueryPlan.SingleQueryPlanNode
child
-
-
Constructor Summary
Constructors Constructor Description GroupNode(QueryPlanNode child, Variable[] columns, Variable group_max_column, Expression[] function_list, java.lang.String[] name_list)Groups over the given columns from the child.GroupNode(QueryPlanNode child, Variable group_max_column, Expression[] function_list, java.lang.String[] name_list)Groups over the entire child (always ends in 1 result in set).
-
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.java.lang.StringtitleString()-
Methods inherited from class com.mckoi.database.QueryPlan.SingleQueryPlanNode
child, debugString
-
-
-
-
Constructor Detail
-
GroupNode
public GroupNode(QueryPlanNode child, Variable[] columns, Variable group_max_column, Expression[] function_list, java.lang.String[] name_list)
Groups over the given columns from the child.
-
GroupNode
public GroupNode(QueryPlanNode child, Variable group_max_column, Expression[] function_list, java.lang.String[] name_list)
Groups over the entire child (always ends in 1 result in set).
-
-
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
-
titleString
public java.lang.String titleString()
- Overrides:
titleStringin classQueryPlan.SingleQueryPlanNode
-
-