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

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

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

# 方法1:max函数
# select user.name,client.name,date
# from login
# join user
# on login.user_id=user.id
# join client
# on login.client_id=client.id
# where (user_id,date) in (
#   select user_id,max(date)
#   from login
#   group by user_id
# )
# order by user.name

# 方法2:窗口函数
select u_n,c_n,date
from (
  select user.name u_n,client.name c_n,date,rank()over(partition by user_id order by date desc) posn 
  from login
  join user
  on login.user_id=user.id
  join client
  on login.client_id=client.id
) t
where posn=1
order by u_n

全部评论

相关推荐

2025-12-08 19:24
电子科技大学 Java
苗条的伊泽瑞尔最喜欢...:同28届被压力了,电科✌就不能去卷算法吗?把Java留给我们双非卷
投递快手等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务