题解 | #牛客每个人最近的登录日期(二)#

牛客每个人最近的登录日期(二)

http://www.nowcoder.com/practice/7cc3c814329546e89e71bb45c805c9ad

思路: 首先根据最后需求得到的查询包含三个表,推出需要join这三个表然后得到u_n,c_n和date的查询表。 得到该表后,离题目所需答案只差一个“筛选出最近登陆日期”,所以用Windows function追加一列maxdate,然后用筛选条件date=maxdate即可筛选出满足最近登陆日期的

with base as (select *,max(date) over (partition by user_id) as mdate
from login)

select u.name as u_n,c.name as c_n,b.mdate
from user u, client c, base b 
where u.id=b.user_id
and c.id = b.client_id
and b.date=b.mdate
order by u_n ASC

全部评论

相关推荐

投递完美世界等公司6个岗位 >
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务