我有一个SQL语句
SELECT
ID
, PERSON
, STATE
, VDATE
, count(PERSON)
, count(VDATE)
from myTable
group by
PERSON
, STATE
, VDATE;
我对VDATE很感兴趣。可能有记录的VDATE为空白且可能超过VDATE。
我的理想结果是一个列表,其中只有一个结果来自前一个选择AND VDATE为空。
因此对于以下数据集
ID,PERSON,STATE,VDATE,count(PERSON),count(VDATE)
1234,9000,ND,2014-04-24,1,1
1235,9000,ND ,, 2,2
1236,9001,CA ,, 2,2
1237,9002,CA ,, 2,2
1238,9002,NV ,, 2,2
1239,9003,MD,2014-04-24,2,2
我希望返回1236,1237和1238
答案 0 :(得分:0)
嗯,这可能就是你所描述的:
select ID, PERSON, STATE, VDATE, count(PERSON), count(VDATE)
from myTable
where VDATE IS NOT NULL
group by PERSON, STATE, VDATE
UNION ALL
select NULL, NULL, NULL, NULL, count(PERSON), 0
from myTable
where VDATE IS NULL;