Max*_*Max 2 left-join jpql playframework
我正在使用JPQL来进行Play Framework的模型查询.
我想知道JPQL是否支持LEFT JOIN的"复杂"ON条件.
在我的例子中,有2个表:
假设我想计算没有特定日期记录的所有应用程序的列表.
在纯SQL中,我使用以下查询获得结果:
SELECT a.* FROM app a LEFT JOIN aggregationhistory ah
ON a.id = ah.app_id AND ah.fromDate = '2012-03-14 00:00:00'
WHERE ah.fromDate is NULL
Run Code Online (Sandbox Code Playgroud)
当然,"开启"状态下的"和"是必不可少的.
现在,我看到的所有JPQL示例都是:
SELECT a.* FROM AggregationHistory ah LEFT JOIN ah.app a WHERE ...
Run Code Online (Sandbox Code Playgroud)
那么,唯一支持的"ON"条件是ID的"匹配"?(似乎对我帮助不大)
我可以想到解决方法(比如,使用"本机查询",或使用JOIN来获取有记录的应用程序列表,并进行比较).但我想知道我在SQL中进行的查询是否可以转换为JPQL.
谢谢
JPQL,AFAIK,不支持ON
子句,但HQL确实支持它们.虽然选择使用with
关键字:
select a from App a
left join a.history h with h.fromDate = :fromDate
where h.fromDate is null
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5472 次 |
最近记录: |