有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

带圆括号表达式的java Spring boot JPA子查询

我是Spring JPA的新手。我有一个表,尝试将其与自定义表连接,并将此查询转换为JPA查询:

SELECT *
from delivery_missions dm 
inner join (
  select di.delivery_mission_id , GROUP_CONCAT(di.delivery_spot_id) as spot_list, GROUP_CONCAT(di.reception_no) as recp_no
  from delivery_items di GROUP by di.delivery_mission_id 
)  as items on items.delivery_mission_id = dm.id 
GROUP by dm.id

下面是我正在写的问题,但我遇到了问题

@Query(value = "SELECT dm, ml, items " +
      "from DeliveryMission dm " +
      "inner join MissionLog ml on ml.deliveryMission.id = dm.id " +
      "inner join ( " + //error here with left parenthesis
      "  select di.delivery_mission_id , GROUP_CONCAT(di.delivery_spot_id) as spot_list, GROUP_CONCAT(di.reception_no) as recp_no " +
      "  from delivery_items di GROUP by di.delivery_mission_id  " +
      ")  as items on items.delivery_mission_id = dm.id ")

我的解决方案是尝试使用nativeQuery(或转换为mybatis)。但这种JPA查询对我来说更合适

编辑1:我的问题是如何在JPA查询中表达这个

编辑2:与我关于JPA Spring数据中的子查询的问题相关 No, it is not possible to have subquery in the select clause in JPQL query.


共 (0) 个答案