SQL練習題42:牛客每天有很多人登錄,請你統計一下牛客每個日期登錄新用戶個數


題目:

牛客每天有很多人登錄,請你統計一下牛客每個日期登錄新用戶個數,
有一個登錄(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;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM