この質問はどこかで答えられていると思いますが、検索する適切なキーワードが見つからないようです。
私はこれらのエンティティを持っています:
@Entity
Entity1{
<random fields>
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "entity_2")
Entity2 e2;//might be null.
}
@Entity
Entity2{
<random fields>
String name;
}
Entity2 の名前で並べ替えられたすべての Entity1 を返すクエリを作成したいと考えています。私はこれを試しました:
SELECT e1 from Entity1 e1 ORDER BY e1.e2.name ASC
上記のクエリ (mysql でテスト済み) の問題は、e2 が null でない Entity1 のみを返すことです。
私が必要としているのは、e2 が null であっても、すべての Entity1 を取得する方法です。
Ps。Ive 'もこれらを試しましたが、同じ結果が得られました:
SELECT e1 from Entity1 e1 ORDER BY e1.e2 ASC, e1.e2.name ASC
SELECT e1 from Entity1 e1 ORDER BY e1.e2.name ASC, e1.e2 ASC
前もって感謝します!
//HQL初心者
編集:
私が使用する jpa 注釈を追加しました。