SQL練習67:牛客每個人最近的登錄日期2
題目鏈接:牛客網
題目描述
牛客每天有很多人登錄,請你統計一下牛客每個用戶最近登錄是哪一天,用的是什么設備.
有一個登錄(login)記錄表,簡況如下:

第1行表示id為2的用戶在2020-10-12使用了客戶端id為1的設備登錄了牛客網
,,,
第4行表示id為3的用戶在2020-10-13使用了客戶端id為2的設備登錄了牛客網
還有一個用戶(user)表,簡況如下:

還有一個客戶端(client)表,簡況如下:

請你寫出一個sql陳述句查詢每個用戶最近一天登錄的日子,用戶的名字,以及用戶用的設備的名字,并且查詢結果按照user的name升序排序,上面的例子查詢結果如下:

查詢結果表明:
fh最近的登錄日期在2020-10-13,而且是使用pc登錄的
wangchao最近的登錄日期也是2020-10-13,而且是使用ios登錄的
解法
連接login、user、date三個表,通過子查詢的方式獲得MAX(date)最近的日期,再添加題中條件即可,最后按照name升序排列,
SELECT u.name, c.name, l.date
FROM login l, user u, client c
WHERE l.date = (SELECT MAX(date)
FROM login l1
WHERE l.user_id = l1.user_id)
AND l.user_id = u.id
AND l.client_id = c.id
ORDER BY u.name
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/259267.html
標籤:其他
上一篇:Android組件化路由,ARouter框架在Kotlin中的用法(跨模塊跳轉、登錄攔截、錯誤重定向)
下一篇:Vue3開發踩坑
