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