postgresql - JPA - Postgres - 如何使用 Distinct 和 Group By 从表中获取结果

标签 postgresql jpa group-by distinct

假设我有一个如下所示的用户 表/实体对象:

user
-------
user_id (long)
person_name (String)
employee_type (String)
age (integer)

给定一个 user_id 列表,我想编写一个 JPQL 查询,它将返回每个不同“employee_type”的 OLDEST 用户。可以这样做吗?

最佳答案

您可以使用 EXISTS 子查询:

SELECT * 
FROM user u WHERE EXISTS 
(
    SELECT 'found'
    FROM user t
    WHERE t.employee_type = u.employee_type
    GROUP BY t.employee_type
    HAVING MAX(t.age) = u.age
) 

关于postgresql - JPA - Postgres - 如何使用 Distinct 和 Group By 从表中获取结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38999138/

相关文章:

mysql - 从 github_timeline : group pushes and downloads by repos, 中选择存储库 url 并通过 stargazers 过滤 repos

c# - NHibernate GroupBy 和 Sum

php - 带有准备语句的 PostgreSQL 内部查询

postgresql - 如何删除 PostgreSQL 表中一定数量的最后一行?

java - Spring Roo JPA - 为什么手动数据库更新在持久性上下文中自动可用?

java - Eclipse Luna - Jboss 7 Servlet 和 JPA 应用程序 servlet 无法启动

mysql - 计算具有相同相关记录集的行数

database - 在 PostgreSQL 数据库中复制 NULL

c++ - PostgreSQL 内存泄漏

java - 使用 Sniffy 指定的 Oracle URL 无效