Package org.apache.calcite.adapter.pig
Class PigJoin
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.BiRel
-
- org.apache.calcite.rel.core.Join
-
- org.apache.calcite.adapter.pig.PigJoin
-
- All Implemented Interfaces:
java.lang.Cloneable
,PigRel
,RelOptNode
,RelNode
public class PigJoin extends Join implements PigRel
Implementation ofJoin
inPig calling convention
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.calcite.adapter.pig.PigRel
PigRel.Implementor
-
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
-
Field Summary
-
Fields inherited from class org.apache.calcite.rel.core.Join
condition, joinType, variablesSet
-
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
-
Fields inherited from interface org.apache.calcite.adapter.pig.PigRel
CONVENTION
-
-
Constructor Summary
Constructors Constructor Description PigJoin(RelOptCluster cluster, RelTraitSet traitSet, RelNode left, RelNode right, RexNode condition, JoinRelType joinType)
Creates a PigJoin.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Join
copy(RelTraitSet traitSet, RexNode conditionExpr, RelNode left, RelNode right, JoinRelType joinType, boolean semiJoinDone)
Creates a copy of this join, overriding condition, system fields and inputs.private java.lang.String
getPigJoinStatement(PigRel.Implementor implementor)
Constructs a Pig JOIN statement in the form ofprivate java.lang.String
getPigJoinType()
Get a string representation of the type of join for use in a Pig script.RelOptTable
getTable()
The Pig alias of the joined relation will have the same name as one from the left side of the join.void
implement(PigRel.Implementor implementor)
Converts this node to a Pig Latin statement.-
Methods inherited from class org.apache.calcite.rel.core.Join
accept, analyzeCondition, computeSelfCost, copy, createJoinType, deriveJoinRowType, deriveRowType, estimateJoinedRows, estimateRowCount, explainTerms, getChildExps, getCondition, getJoinType, getSystemFieldList, getVariablesSet, isSemiJoinDone, isValid
-
Methods inherited from class org.apache.calcite.rel.BiRel
childrenAccept, getInputs, getLeft, getRight, replaceInput
-
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTraitSet, getVariablesStopped, isDistinct, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, computeSelfCost, copy, estimateRowCount, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
-
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getDigest, getId, getTraitSet
-
-
-
-
Constructor Detail
-
PigJoin
public PigJoin(RelOptCluster cluster, RelTraitSet traitSet, RelNode left, RelNode right, RexNode condition, JoinRelType joinType)
Creates a PigJoin.
-
-
Method Detail
-
copy
public Join copy(RelTraitSet traitSet, RexNode conditionExpr, RelNode left, RelNode right, JoinRelType joinType, boolean semiJoinDone)
Description copied from class:Join
Creates a copy of this join, overriding condition, system fields and inputs.General contract as
RelNode.copy(org.apache.calcite.plan.RelTraitSet, java.util.List<org.apache.calcite.rel.RelNode>)
.
-
implement
public void implement(PigRel.Implementor implementor)
Description copied from interface:PigRel
Converts this node to a Pig Latin statement.
-
getTable
public RelOptTable getTable()
The Pig alias of the joined relation will have the same name as one from the left side of the join.- Specified by:
getTable
in interfaceRelNode
- Overrides:
getTable
in classAbstractRelNode
- Returns:
- If this relational expression represents an access to a table, returns that table, otherwise returns null
-
getPigJoinStatement
private java.lang.String getPigJoinStatement(PigRel.Implementor implementor)
Constructs a Pig JOIN statement in the form ofA = JOIN A BY f1 LEFT OUTER, B BY f2;
=
.
-
getPigJoinType
private java.lang.String getPigJoinType()
Get a string representation of the type of join for use in a Pig script. Pig does not have an explicit "inner" marker, so return an empty string in this case.
-
-