我有一个包含employeeID
和SSN字段的表。我试图用以下标准过滤掉所有记录:
具有单个SSN条目且值为null的所有员工
所有拥有多个SSN条目的员工
以下显示了三种情景
ID SSN
1 000000000
1 NULL
ID SSN
1 000000000
1 111111111
ID SSN
1 NULL
以下是表定义:我使用Sybase数据库中的数据填充此表
谢谢, 布拉德
答案 0 :(得分:2)
select employeeID
from YourTable
group by
employeeID
having count(case when SSN is null then 1 end) > 0
or count(distinct SSN) > 1
答案 1 :(得分:1)
您可以使用聚合,使用having
子句:
select e.id
from ssns e
group by e.id
having (count(*) = 1 and count(ssn) = 0) or -- first condition
count(*) > 1 -- second condition