相关疑难解决方法(0)

如何将LEFT JOIN和Where子句与JPQL结合使用?

我有两个JPA实体:

  • 时间表(包含预订清单)
  • 预订(包含日期字段:日期resDate)

我的目标是只检索与日期参数(planningDate)匹配的预订,同时检索所有日程表,无论预定是否存在于此给定日期.

所以我写道:

SELECT s FROM Schedule as s LEFT JOIN s.reservations as r WHERE r.resDate = :planningDate order by s.startHour
Run Code Online (Sandbox Code Playgroud)

尽管我的LEFT JOIN,为什么没有在这个日期没有预订的时间表?

可能与本机查询一样,LEFT JOIN在与WHERE子句组合时看起来像INNER JOIN.

那么,如何更改查询以满足我的要求?我没有在JPQL中找到特定功能.

java hibernate jpa left-join

12
推荐指数
1
解决办法
3万
查看次数

如何使用LEFT OUTER JOIN创建JPA查询

基于这两个表(及其相应的实体):

profiles(id, email, name)
items(id, profile_id, rank, price)

Profile(email, name)
Item(profile, rank, price)
Run Code Online (Sandbox Code Playgroud)

我必须列出所有配置文件,按其商品的最佳排名排序(实际上它是"顶级配置文件"列表).

这是SQL请求,就像您可以在PHPMyAdmin中执行它一样,例如:

SELECT AVG(i.rank) AS rank, p.* FROM profiles AS p LEFT OUTER JOIN items AS i ON p.id = i.profile_id GROUP BY p.id ORDER BY rank DESC;
Run Code Online (Sandbox Code Playgroud)

我是JPA的新手,我找不到一些关于使用CriteriaBuilder进行LEFT OUTER JOIN的例子(如果这是正确的事情).

如果有人能以正确的方式引导我,我真的很感激(我不是要求别人帮我做这份工作,只是有良好的线索).

非常感谢你!:)

sql jpa criteria

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

jpa ×2

criteria ×1

hibernate ×1

java ×1

left-join ×1

sql ×1