题解 | 统计商家不同会员每日访问人次及访问人数

统计商家不同会员每日访问人次及访问人数

https://www.nowcoder.com/practice/0017dc22426b495889da3304dcf254d1

with t as( #题目不够严谨,未考虑到访问时间和离开时间隔天的情况
select
    user_id,
    visit_time time
from visit_tb
union all
select 
    user_id,
    if(datediff(leave_time,visit_time) != 0,leave_time, 0 ) time
from visit_tb
)
select 
    vip,
    count(*) visit_nums,
    count(distinct user_id) visit_users
from t join uservip_tb using(user_id)
where time != 0 
group by vip 
order by visit_nums desc




全部评论
还是大佬考虑周到,确实,实际做项目的时候,需求方就爱这样提这种简陋的要求,咱们这些开发者必须进一步考虑周到才行。
1 回复 分享
发布于 03-20 09:52 广东
可以帮忙解释下子查询if函数的用意吗,跟后续where语句搭配使用的逻辑是什么,我有点没理清楚,感谢解答
点赞 回复 分享
发布于 04-25 22:00 广东
考虑的很周到
点赞 回复 分享
发布于 03-28 16:51 广东

相关推荐

谁知道呢_:要掉小珍珠了,库库学三年,这个结果
点赞 评论 收藏
分享
评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务