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

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

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

select tag,sum(if_retweet) retweet_cut,round(avg(if_retweet),3) retweet_rate

from tb_user_video_log  tuvl join tb_video_info tvi on tuvl.video_id = tvi.video_id

where timestampdiff(day,date(start_time),date((select max(start_time) from tb_user_video_log)))<=29

group by tag

order by retweet_rate desc

//where 后面不能使用分组函数,所以要获得start-time最大值只能使用子查询,在子查询中调用max(),

TIMESTAMPDIFF函数返回begin-end的结果,其中begin和end是DATEDATETIME表达式,所以如果调用参数不对时,待用date()或者datetime()修改。

TIMESTAMPDIFF函数允许其参数具有混合类型,例如,begin是DATE值,end可以是DATETIME值。 如果使用DATE值,则TIMESTAMPDIFF函数将其视为时间部分为“00:00:00”的DATETIME值。

unit参数是确定(end-begin)的结果的单位,表示为整数。 以下是有效单位:

  • MICROSECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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