vishnu.model.algebra
Class EquiJoin
java.lang.Object
vishnu.model.algebra.AbstractBinaryRelation
vishnu.model.algebra.EquiJoin
- All Implemented Interfaces:
- BinaryRelation, Join, Relation
public class EquiJoin
- extends AbstractBinaryRelation
- implements Join
Un EquiJoin es un join cuya condicion contiene, en su condicion
de restriccion, al menos una igualdad entre una columna de r y
una columna de s y el primer nivel de relaciones es de ANDs,
es decir, el join es de la forma:
(s Join[s.a==r.b AND (*) ] r)
TODO revisar que se cumpla la condicion de EquiJoin (hard! ver JoinTranslationStage)
- Author:
- Mariano Tepper y Hernan Rancati
-
| Methods inherited from class vishnu.model.algebra.AbstractBinaryRelation |
algorithm, algorithm, debugging, hasChanged, leftRelation, leftRelation, perform, rightRelation, rightRelation, setChanged, setContext, signature |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
EquiJoin
public EquiJoin(Relation r,
Relation s,
SQLConditionalExpression e)
- Creates a new instance of join
toString
public java.lang.String toString()
- Specified by:
toString in interface Join- Overrides:
toString in class java.lang.Object
conditions
public SQLConditionalExpression conditions()
- Specified by:
conditions in interface Join
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals in interface Join- Overrides:
equals in class java.lang.Object
hashCode
public int hashCode()
- Specified by:
hashCode in interface Join- Overrides:
hashCode in class java.lang.Object