gpt4 book ai didi

jpa - JPQL 或 JPA 标准构建器中的 DISTINCT ON

转载 作者:行者123 更新时间:2023-12-01 23:48:48 24 4
gpt4 key购买 nike

我有一个 JPA 实体用户,其中包含一个字段(实体)城市。我想选择一个页面,例如,来自不同城市的 10 个用户。

在 SQL 中,我会使用类似的东西:

SELECT DISTINCT ON (u.city_id) u.username ,u.email, u.city_id ....
FROM user u LIMIT 0,10 ....

但我需要使用 JPQL 或 JPA 标准构建器来完成。我怎样才能做到这一点?

最佳答案

You can do this by using Hibernate Criteria Query 

sample code can be like this




Criteria criteria = session.createCriteria(user.class);
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.distinct(projectionList.add(Projections.property("city_id"), "cityId")));
projectionList.add(Projections.property("username"), "username");
projectionList.add(Projections.property("email"), "email");
criteria.setProjection(projectionList2);
criteria.setResultTransformer(Transformers.aliasToBean(user.class));
List list = criteria.list();

关于jpa - JPQL 或 JPA 标准构建器中的 DISTINCT ON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27656616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com