题解 | 每类视频近一个月的转发量/率

每类视频近一个月的转发量/率

https://www.nowcoder.com/practice/a78cf92c11e0421abf93762d25c3bfad

SELECT 
b.tag,
sum(case when a.if_retweet =1 then 1 else 0 end) as retweet_cnt,
-- count(case when a.if_retweet=1 then 1 else NULL end) as cnt,
ROUND(sum(case when a.if_retweet =1 then 1 else 0 end) /count(*),3) retweet_rate

from tb_user_video_log a
left join tb_video_info b
on a.video_id=b.video_id
where  DATE_FORMAT(a.start_time,'%Y-%m-%d')>= 
(
		SELECT DATE_SUB(max(DATE_format(end_time,'%Y-%m-%d')),interval 29 DAY) 
		from tb_user_video_log
)

GROUP BY 1
order by 3 desc

1、注意count和SUM区别,SUM把满足条件加上,COUNT就是技数1,0都算,NULL不计算

2、DATE_SUB(日期,interval 29 DAY) DAY 大写

3、DATE_FORMAT(日期,'%y-%m-%d')

全部评论

相关推荐

03-28 16:43
佛山大学 Java
在度假的布拉德很想退...:你这实习项目写的也太简单了吧?业务加技术难点要体现出来呀,你这写的都不知道具体干了什么
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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