我的数据库中有以下表格:
表名:INSURANCE TABLE
ID | Policy
1 | 34564
2 | 67548
3 | 34564
4 | 98271
5 | 90198
6 | 98271
我正在寻找一个sql查询,它将比较所有5行中的Policy列值,并返回那些值等于至少另一行的行。
对于上表,我应该得到以下结果集:
1 | 34564
3 | 34564个
4 | 98271个
6 | 98271
我很感激如何撰写此查询的回复。
答案 0 :(得分:3)
如果我了解您,您希望按策略分组,丢弃唯一值:
select * from your_table where Policy in (
select Policy from your_table group by Policy having count(*) > 1
);