如何解决SQL如何保持多个条目满足某个条件
我有以下数据集:
ID Amount
1 50
2 6
3 7
3 50
4 60
4 30
5 40
5 20
我只想保留包含多个条目的 ID,这些条目的数量至少大于或等于 50。最终结果如下所示:
ID Amount
3 7
3 50
4 60
4 30
我该怎么做?
解决方法
您可以使用exists
:
select t.*
from t
where exists (select 1
from t t2
where t2.id = t.id and t2.amount >= 50
);
,
你可以像下面这样尝试
select t1.* from table_name t1
where 50 >=( select max(amount) from table_name t2
where t1.id=t2.id)
,
您可以使用 windows 函数 max
如下:
select * from
(select t.*,max(amount) over (partition by id) as max_
from your_table t) t
where max_ >= 50
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。