したがって、それぞれがdbテーブルにマップする2つのオブジェクトがあります。Hibernate Complex Join
public class Dispute {
private Long disputeSeqNo;
private List<StatusInfo> statusInfos;
}
public class StatusInfo {
private Long statusSeqNo;
private Date createdDt;
private String statusCd;
private Dispute dispute;
}
紛争には、0以上のStatusInfoが関連付けられている可能性があります。
現在、hibernateは、すべてのDisputeについてすべてのStatusInfoオブジェクトを返しています。ある場合には、これが望ましい。しかし、私はユースケースを持っています:
- 各紛争の最新のStatusInfoを表示するだけです。
- さらに、この同じディスプレイには、最新のStatusInfo.statusCd値でソートする機能が必要です。私のディスプレイはページングされているので(休止状態のページ区切り機能を使用して)、このソートはデータベースで行う必要があります。
私はこれを行うことができますが、これをHQLに変換するのに苦労しています。これは、データを並べ替えることができます。
HQLでこれを解決する方法についてのご意見はありますか?私がまだ帰ってきたところ:
List<Dispute>
フィードバックをお寄せいただきありがとうございます。
ありがとうございます!
あなたのケースに適したSQLクエリを追加してください。 –
できません。紛争のstatusInfosは紛争のstatusInfosです。それらのすべて。それはあなたがデータベースから紛争を得た方法に依存しません。紛争の最新のstatusInfoが必要な場合は、StatusInfoを選択するクエリが必要です。 '紛争の選択、紛争からのstatusInfo d。d.statusInfos statusInfo where ... 'のようなもの。 –