【发布时间】:2013-01-23 05:06:26
【问题描述】:
我想计算没有缺失值的列中日期的出现次数。因此,例如,我想计算汽车服务的次数,而不是包括没有服务日期的空值。
我尝试了简单的计数功能,但它带来了所有记录。我想过使用“案例”,但我不确定语法。我正在使用 SAS 企业指南。
采样日期
id car service_Date
1 honda 01/01/2005
2 honda 01/01/2006
3 honda
4 honda 01/01/2008
5 honda
6 honda 01/01/2010
结果:我只想有 4 个作为答案,所以它不计算空值。
PROC SQL;
CREATE TABLE WORK.QUERY_FOR_CARS AS
SELECT
t1.CAR,
t1.ID
/* SERVICE_DATE */
(count (case when t1.S_DATE is not null then 0 end)) AS SERVICE_DATE
FROM WORK.QUERY_FOR_CAR_SERVICE
GROUP BY t1.S_DATE;
QUIT;
我已经添加了我正在使用的代码。它给了我日期的计数,但还包括日期值为空的位置。
【问题讨论】:
-
您需要包含您的查询和 SQL 方言。
-
您应该查看
WHERE声明 -
Service_Date 是什么数据类型? (我假设约会,但我见过陌生人)
-
Beanie,您刚刚对问题所做的编辑没有帮助(并且在语法上无效)。您是否正在寻找一个查询来返回每个 CAR 的非缺失 S_DATE 值的数量?