題目:
牛客每天有很多人登錄,請你統計一下牛客每個日期登錄新用戶個數,
有一個登錄(login)記錄表,簡況如下:
第1行表示id為2的用戶在2020-10-12使用了客戶端id為1的設備登錄了牛客網,因為是第1次登錄,所以是新用戶
。。。
第4行表示id為2的用戶在2020-10-13使用了客戶端id為2的設備登錄了牛客網,因為是第2次登錄,所以是老用戶
。。
最后1行表示id為4的用戶在2020-10-15使用了客戶端id為1的設備登錄了牛客網,因為是第2次登錄,所以是老用戶
請你寫出一個sql語句查詢每個日期登錄新用戶個數,並且查詢結果按照日期升序排序,上面的例子查詢結果如下:(輸出0,可以用sqlite的ifnull函數嘗試實現,select ifnull(null,1)的輸出是1)
查詢結果表明:
2020-10-12,有3個新用戶(id為2,3,1)登錄
2020-10-13,沒有新用戶登錄
2020-10-14,有1個新用戶(id為4)登錄
2020-10-15,沒有新用戶登錄
SELECT a.date, SUM(CASE day WHEN 1 THEN 1 ELSE 0 END) FROM (SELECT date, row_number() OVER(PARTITION BY user_id ORDER BY date) AS day FROM login) AS a GROUP BY date;