count(不同的col1)没有给出正确的计数

时间:2015-03-18 13:58:49

标签: sql-server-2008

我有一张下表

id date1

1 1973-07-06

1 null

1 1994-01-20

1 1973-07-06

1 1980-03-12

1 1994-01-20

2 1960-10-17

2 1996-12-12

2 1996-12-12

2 2000-02-18

2 null

2 null

2 1960-10-17

2 1960-10-17

2 null

我需要为每个id找到唯一的date1值计数

我正在使用的查询如下

select id,count(distinct date1) as col1
from iop
group by id 

此查询给出了错误的结果

id col1

1 4

2 4

但是我应该

id col1

1 3

2 3

1 个答案:

答案 0 :(得分:1)

查询正在计算空值,请尝试:

select id,count(distinct date1) as col1
from iop
WHERE date1 NOT LIKE  'NULL'
group by id