値が欠落していない列の日付の出現をカウントしたい。したがって、たとえば、サービスの日付がない場合に null 値を含めるのではなく、車がサービスされた回数をカウントしたいと考えています。
単純なカウント機能を試しましたが、すべてのレコードが表示されます。「ケース」を使用することを考えましたが、構文についてはわかりません。SAS Enterprise Guide を使用しています。
サンプル日付
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 つだけが必要なので、null 値はカウントされません。
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;
私が使用しているコードを追加しました。日付の数が表示されますが、日付の値が null である場所も含まれます。