前提・実現したいこと
テーブル名:テスト
訪問日 | 名前 | 学年 |
---|---|---|
2021-04-01 00:00:00.000 | TANAKA | 1 |
2021-04-02 00:00:00.000 | SUZUKI | 2 |
2021-05-01 00:00:00.000 | SATOU | 3 |
2021-04-01 00:00:00.000 | YAMADA | 1 |
2021-04-03 00:00:00.000 | TANAKA | 1 |
2021-04-04 00:00:00.000 | TANAKA | 1 |
このテーブルから、ユニークな訪問者数を月別に表示したいと考えています。
以下のSQLを実行しましたが、ユニークな訪問者数ではなく、のべ訪問者数になってしまいます。
select Month(t1.訪問日) as 月, SUM(CASE 学年 WHEN 1 THEN 1 ELSE 0 END) AS 学年1, SUM(CASE 学年 WHEN 2 THEN 1 ELSE 0 END) AS 学年2, SUM(CASE 学年 WHEN 3 THEN 1 ELSE 0 END) AS 学年3 from テスト t1 group by Month(t1.訪問日) order by Month(t1.訪問日)
実行結果↓
月 | 学年1 | 学年2 | 学年3 |
---|---|---|---|
4 | 4 | 1 | 0 |
5 | 0 | 0 | 1 |
期待している実行結果↓
月 | 学年1 | 学年2 | 学年3 |
---|---|---|---|
4 | 2 | 1 | 0 |
5 | 0 | 0 | 1 |
どのようにすれば期待している結果を得ることができるのでしょうか?
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/28 23:36