gpt4 book ai didi

sql - PostgreSQL - 每个用户的最大值

转载 作者:行者123 更新时间:2023-11-29 14:04:50 35 4
gpt4 key购买 nike

我有一张 table

User | Phone | Value
Peter | 0 | 1
Peter | 456 | 2
Peter | 456 | 3
Paul | 456 | 7
Paul | 789 | 10

我想为每个用户选择 MAX 值,它也低于 tresshold

对于 tresshold 8,我希望结果是

Peter | 456 | 3
Paul | 456 | 7

我已经用 HAVING 尝试了 GROUP BY,但是我得到了

column "phone" must appear in the GROUP BY clause or be used in an aggregate function

类似的查询逻辑在 MySQL 中有效,但我不太确定如何在 PostgreSQL 中使用 GROUP BY 进行操作。我不想按电话分组。

最佳答案

在我得到“juergen d”解决方案的结果后,我想到了这个可以更快地得到相同结果的方法

SELECT DISTINCT ON(user) user, phone, value
FROM table
WHERE value < 8
ORDER BY user, value DESC;

关于sql - PostgreSQL - 每个用户的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33063073/

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