sql - 如何在 SQL 中查找重复记录
问题描述
桌子:
ID status CREATED TIME
OD01 CLOSED 12-09-2020
OD01 OPEN 10-09-2020
OD02 CLOSED 09-09-2020
OD02 CLOSED 07-09-2020
OD03 OPEN 04-09-2020
OD03 OPEN 06-09-2020
我想要输出,因为 ID 是相同的,两者都应该关闭
解决方案
select id
from your_table
group by id
having sum(case when status = 'closed' then 1 else 0 end) >= 2
或者
select id
from your_table
where status = 'closed'
group by id
having count(*) >= 2
推荐阅读
- computer-vision - 用火炬平均计算阿尔法值?
- php - 如何解析类似于 .ini 文件的格式化文本?
- java - 生成二维码后如何保存名称
- python - 如何使用 pandas 和 python 从网站中提取和保存特定选项卡中显示的表格?
- javascript - 你如何让眼睛移动并跟随光标?老实说,我不知道从这里做什么
- r - 查找数据中的突然斜率
- react-native - 如何在反应本机屏幕上“锁定”组件的位置?
- java - Firestore 中的 WhereNotEqualTo 不起作用,但 whereEqualTo 起作用
- python - 合并多个 Pandas Dataframe 对象
- excel - Excel 中的范围与 Google 表格中的范围