【发布时间】:2018-04-12 21:01:08
【问题描述】:
我有一个非常简单的查询,它根据“in”子句检索值。作为“in”参数出现的列表被适当地排序。
查询:
@Query(value = "select i from ItemEntity i where i.secondaryId in :ids")
List<ItemEntity> itemsIn(@Param("ids") List<UUID> ids, Pageable pageable);
我需要以与List<UUID> ids 相同的方式对结果进行排序,是否可以在没有普通 sql 的情况下实现这一点,但只有在 Spring Data 和/或 Hibernate 的帮助下才能实现。
【问题讨论】:
-
即使使用普通的 SQL,我也看不出你是怎么做到的。您需要通过比较项目实体的 ID 在 ID 列表中的位置来对返回的列表进行排序。
标签: java hibernate spring-data spring-data-jpa jpql