题解 | #2021年11月每天的人均浏览文章时长#

2021年11月每天的人均浏览文章时长

https://www.nowcoder.com/practice/8e33da493a704d3da15432e4a0b61bb3

# 计算每条记录的时长
# 计算每天有几个人
# 按天分组

# 查询天,平均浏览时长
SELECT dt, ROUND(SUM(sec)/COUNT(DISTINCT uid), 1) avg_viiew_len_sec
FROM (
	# 子查询,查询uid,浏览时长、日期格式化
    SELECT uid, TIMESTAMPDIFF(SECOND, in_time, out_time) sec, DATE_FORMAT(in_time, '%Y-%m-%d') dt
    FROM tb_user_log
	# 加限制条件是说当id为0的时候是在非浏览状态下的记录,不算浏览
    WHERE artical_id != 0
        ) a
GROUP BY dt
# 限制11月的记录
HAVING dt BETWEEN '2021-11-01' AND '2021-11-30'
# 时间由短到长,也就是正序
ORDER BY avg_viiew_len_sec

踩的坑:看到题干说文章id为0代表是在列表页出现的,心想估计要注意,但在测试样例没出现,就忽略了,提交的时候发现有的天的多了,看到题解才发现了这个问题

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-27 20:55
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
05-28 12:15
点赞 评论 收藏
分享
那一天的Java_Java起来:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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