public class SubQuery extends java.lang.Object implements ASTNode
select dept.name, lastName, salary from Employee where salary > (select avg(salary) from Employee on .dept=dept)とした場合、Employeeエンティティに定義される参照dept(のoid)で結合された相関サブクエリを表すことができる。
select name, (select max(amount) from Detail on .this=parent where status=1) from Masterとした場合、.thisは上位クエリのMasterのエンティティレコード自体を示す。
修飾子とタイプ | フィールドと説明 |
---|---|
static java.lang.String |
THIS
相関サブクエリ利用時、結合条件(ON句)にて自分自身への参照を表現する定数。
|
コンストラクタと説明 |
---|
SubQuery() |
SubQuery(Query query) |
SubQuery(Query query,
Condition on) |
修飾子とタイプ | メソッドと説明 |
---|---|
ASTNode |
accept(ASTTransformer transformer) |
void |
accept(QueryVisitor visitor) |
boolean |
equals(java.lang.Object obj) |
Condition |
getOn() |
Query |
getQuery() |
int |
hashCode() |
SubQuery |
on(Condition on)
相関サブクエリとする場合の結合条件を指定。
|
SubQuery |
on(EntityField mainQueryProperty,
EntityField subQueryProperty,
int unnestCount)
相関サブクエリとする場合の結合条件を指定。
|
SubQuery |
on(java.lang.String mainQueryProperyName,
java.lang.String subQueryPropertyName)
相関サブクエリとする場合の結合条件を指定。
|
SubQuery |
on(java.lang.String mainQueryProperyName,
java.lang.String subQueryPropertyName,
int unnestCount)
相関サブクエリとする場合の結合条件を指定。
|
void |
setOn(Condition on) |
void |
setQuery(Query query) |
java.lang.String |
toString() |
public static final java.lang.String THIS
public SubQuery()
public SubQuery(Query query)
public Query getQuery()
public void setQuery(Query query)
public Condition getOn()
public void setOn(Condition on)
public SubQuery on(EntityField mainQueryProperty, EntityField subQueryProperty, int unnestCount)
mainQueryProperty
- 上位クエリ側のプロパティsubQueryProperty
- サブクエリ側のプロパティunnestCount
- 何階層上位のクエリと結合するかを指定public SubQuery on(java.lang.String mainQueryProperyName, java.lang.String subQueryPropertyName, int unnestCount)
mainQueryProperyName
- 上位クエリ側のプロパティ名subQueryPropertyName
- サブクエリ側のプロパティ名unnestCount
- 何階層上位のクエリと結合するかを指定public SubQuery on(java.lang.String mainQueryProperyName, java.lang.String subQueryPropertyName)
mainQueryProperyName
- 上位クエリ側のプロパティ名subQueryPropertyName
- サブクエリ側のプロパティ名public java.lang.String toString()
public void accept(QueryVisitor visitor)
public ASTNode accept(ASTTransformer transformer)
public int hashCode()