vishnu.model.algebra
Class EquiJoin

java.lang.Object
  extended by vishnu.model.algebra.AbstractBinaryRelation
      extended by 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
 

Nested Class Summary
 
Nested classes/interfaces inherited from interface vishnu.model.algebra.Relation
Relation.Context, Relation.ContextNotSelectedException
 
Field Summary
 
Fields inherited from class vishnu.model.algebra.AbstractBinaryRelation
r, s
 
Constructor Summary
EquiJoin(Relation r, Relation s, SQLConditionalExpression e)
          Creates a new instance of join
 
Method Summary
 SQLConditionalExpression conditions()
           
 boolean equals(java.lang.Object o)
           
 int hashCode()
           
 java.lang.String toString()
           
 
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
 
Methods inherited from interface vishnu.model.algebra.BinaryRelation
leftRelation, leftRelation, rightRelation, rightRelation
 
Methods inherited from interface vishnu.model.algebra.Relation
algorithm, algorithm, hasChanged, perform, setChanged, setContext, signature
 

Constructor Detail

EquiJoin

public EquiJoin(Relation r,
                Relation s,
                SQLConditionalExpression e)
Creates a new instance of join

Method Detail

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