Package com.mckoi.database
Class QueryPlan.EquiJoinNode
java.lang.Object
com.mckoi.database.QueryPlan.BranchQueryPlanNode
com.mckoi.database.QueryPlan.EquiJoinNode
- All Implemented Interfaces:
QueryPlanNode,Serializable,Cloneable
- Enclosing class:
QueryPlan
A branch node for equi-joining two tables together given two sets of
columns. This is a seperate node from a general join operation to allow
for optimizations with multi-column indexes.
An equi-join is the most common type of join.
At query runtime, this decides the best best way to perform the join, either by
- See Also:
-
Field Summary
Fields inherited from class com.mckoi.database.QueryPlan.BranchQueryPlanNode
left, right -
Constructor Summary
ConstructorsConstructorDescriptionEquiJoinNode(QueryPlanNode left, QueryPlanNode right, Variable[] left_cols, Variable[] right_cols) -
Method Summary
Modifier and TypeMethodDescriptionclone()Deep clone.evaluate(QueryContext context) Evaluates the node and returns the result as a Table.Methods inherited from class com.mckoi.database.QueryPlan.BranchQueryPlanNode
debugString, discoverCorrelatedVariables, discoverTableNames, left, right, titleString
-
Constructor Details
-
EquiJoinNode
public EquiJoinNode(QueryPlanNode left, QueryPlanNode right, Variable[] left_cols, Variable[] right_cols)
-
-
Method Details
-
evaluate
Description copied from interface:QueryPlanNodeEvaluates the node and returns the result as a Table. The VariableResolver resolves any outer variables -
clone
Description copied from class:QueryPlan.BranchQueryPlanNodeDeep clone.- Specified by:
clonein interfaceQueryPlanNode- Overrides:
clonein classQueryPlan.BranchQueryPlanNode- Throws:
CloneNotSupportedException
-