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

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

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

select tag, sum(if_retweet) as retweet_cut, round(sum(if_retweet) / count(*),3) retweet_rate
from tb_user_video_log log 
left join tb_video_info info
on log.video_id = info.video_id
where datediff(
date((select max(start_time)from tb_user_video_log)),date(log.start_time)) <=29
group by tag
order by retweet_cut desc

难点:计算最近一个月的记录,这里先计算最近一次记录 (select max(start_time) from tb_user_video_log),

  1. 注意我们不直接使用max()聚合函数,因为后续我们还需要嵌套一个datediff(),即datediff(date(1),date(2))<=29
  2. 注意我们需要计算的是30 天内,所以应该是<=29。

在select语句中,计算比率我们可以选择:

  1. sum(if_retweet) / count(*)
  2. sum(if_retweet) / sum(1)
全部评论

相关推荐

码农索隆:我头回见校招简历把个人优势写在最前面的,是我老了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务