|
3.1.2: 2012-07-31 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.basedb.core.RealJoin
class RealJoin
Represents a join from one virtual table in the dynamic database to
a table in the regular database or between two tables in the
regular database.
virtualTable vt JOIN regularTable rt ON rt.id = vt.leftColumn
.
Note that the join is always done to the 'id' of the items in the regular table.
RealTable
Field Summary | |
---|---|
private JoinType |
joinType
|
private RealTable |
right
|
private RealTable |
rLeft
|
private String |
rLeftColumn
|
private VirtualTable |
vLeft
|
private VirtualColumn |
vLeftColumn
|
Constructor Summary | |
---|---|
RealJoin(JoinType joinType,
RealTable left,
RealTable right,
String leftColumn)
Create a new join between two regular tables. |
|
RealJoin(JoinType joinType,
VirtualTable left,
RealTable right,
VirtualColumn leftColumn)
Create a new join between a virtual and a regular table. |
Method Summary | |
---|---|
boolean |
equals(Object other)
This join is equal to another RealJoin if they join between the same tables using the same columns and join types. |
Collection<? extends QueryElement> |
getChildren()
Get the children of this query element or null if it has no children. |
private String |
getLeftTableAlias(Query query)
|
private String |
getLeftTableColumn()
|
String |
getThetaJoin(Query query,
DbControl dc)
|
String |
getThetaJoinCondition(Query query,
DbControl dc)
|
int |
hashCode()
|
String |
toQl(Query query,
DbControl dc)
Create a query language string of the query element. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private final JoinType joinType
private final RealTable right
private VirtualTable vLeft
private VirtualColumn vLeftColumn
private RealTable rLeft
private String rLeftColumn
Constructor Detail |
---|
RealJoin(JoinType joinType, VirtualTable left, RealTable right, VirtualColumn leftColumn)
SELECT ... FROM left JOIN right ON right.id = left.column
.
joinType
- The type of joinleft
- The left table to join from, if not specified we join
from the root tableright
- The table to join toleftColumn
- The column in the left table to join from, we always
join to the id of the real tableRealJoin(JoinType joinType, RealTable left, RealTable right, String leftColumn)
SELECT ... FROM left JOIN right ON right.id = left.column
.
joinType
- The type of joinleft
- The left table to join from, if not specified we join
from the root tableright
- The table to join toleftColumn
- The column in the left table to join from, we always
join to the id of the real tableMethod Detail |
---|
public String toQl(Query query, DbControl dc) throws BaseException
QueryElement
Query.getQueryType()
method to find out which query language is wanted
in case the element requires different syntax for different languages.
toQl
in interface QueryElement
query
- The query that is about to be executeddc
- The DbControl
object used to execute the query
BaseException
- If there is any other errorpublic Collection<? extends QueryElement> getChildren()
QueryElement
AddExpression
has two children, the expression
beeing added.
getChildren
in interface QueryElement
public String getThetaJoin(Query query, DbControl dc) throws BaseException
getThetaJoin
in interface Join
BaseException
public String getThetaJoinCondition(Query query, DbControl dc) throws BaseException
getThetaJoinCondition
in interface Join
BaseException
public String toString()
toString
in class Object
public boolean equals(Object other)
equals
in class Object
public int hashCode()
hashCode
in class Object
private String getLeftTableAlias(Query query)
private String getLeftTableColumn()
|
3.1.2: 2012-07-31 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |