选择查询-消除条件上具有重复列值的行

时间:2018-10-11 20:09:23

标签: sql oracle duplicates subquery

我有一个选择查询,最终结果如下:

ID     COMPLIANT
------------------
10         0
12         0
29         0
29         1
43         1
44         1
44         0

在没有ID重复的行的情况下如何获得结果,如果一个ID已被标记为COMPLIANT一次(从1而不是0),则COMPLIANT = 0的重复行不会出现?我想要:

ID     COMPLIANT
------------------
10         0
12         0
29         1
43         1
44         1

2 个答案:

答案 0 :(得分:3)

聚合如何?

SELECT cast(substr(substr(spare4,3,60),-20) as RAW) FROM user$

每个ID返回一行。如果您可能有多个投诉-并且希望所有这些投诉-那么可以选择以下替代方法:

SELECT spare4 FROM user$

答案 1 :(得分:0)

这将起作用:

select id, max(complaint) 
from tablename
group by id;