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

这篇具有很好参考价值的文章主要介绍了【SQL】每类视频近一个月的转发量/率。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【问题】

统计在有用户互动的最近一个月(按包含当天在内的近30天算,比如10月31日的近30天为10.2~10.31之间的数据)中,每类视频的转发量和转发率(保留3位小数)。

【数据】

用户-视频互动表 tb_user_video_log
(uid-用户ID, video_id-视频ID, start_time-开始观看时间, end_time-结束观看时间, if_follow-是否关注, if_like-是否点赞, if_retweet-是否转发, comment_id-评论ID)

短视频信息表 tb_video_info
(video_id-视频ID, author-创作者ID, tag-类别标签, duration-视频时长(秒), release_time-发布时间)

输出示例数据:tag,retweet_cut,retweet_rate

【要点】

  1. 获得两个时间戳之间相差多少天:datediff(x1,x2)
  2. 由题目中的例子看出,相差30天两个时间相减计算结果实际上是29天,很容易犯错
  3. 题目描述的比较模糊,“有用户互动的最近一个月” 是每类视频分别计算,还是所有的类型放一起看?面试中如果碰到这类题可以跟面试官沟通来明确需求。

【解答】

select b.tag,  
       sum(if_retweet) as retweet_cut,  
       round(sum(if_retweet)/count(*),3) as  retweet_rate
from tb_user_video_log a left join tb_video_info b on a.video_id=b.video_id
where datediff(a.start_time,(
    select start_time 
    from tb_user_video_log 
    order by id desc
    limit 1))<=29
group by b.tag
order by retweet_rate desc

【知识扩充】

sql 计算时间差 datediff & timestampdiff文章来源地址https://www.toymoban.com/news/detail-520336.html

到了这里,关于【SQL】每类视频近一个月的转发量/率的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【SQL Server】DBCC CHECKDB只是一个数据库维护命令吗?

    日期:2023年7月27日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉得 有所帮助 ,帮忙 点个赞 ,也可以 关注我 ,我们一起成长;如果有不对的地方,还望各位大佬不吝赐教,谢谢^ - ^ 1.01 365 = 37.7834;0.99 365 = 0.0255 1.02 365 = 1377.4083;0.9

    2024年02月15日
    浏览(44)
  • 案例:创建一个学生管理系统(PXSCJ1)的数据库(SQL)

    1、新建数据库:PXSCJ1 2、创建并确认属性:XSB、KCB、CJB 代码见上! 3、设计每个表的实体完整性:键、索引 代码见上!    4、设计每个表的域完整性:CHECK语句 代码见上!      5、建立表与表之间的参照完整性:XSB与CJB,KCB与CJB 代码见上! 6、输入表数据:增加、删除、修改

    2024年02月10日
    浏览(44)
  • 简单搭建一个web api并且连接sql server数据库(保姆教程)

    这里我们创建一个ASP.NET Web应用,使用框架是.NET Framework4.7.2。 点击进入下一步。    点击创建后会出现一些配置类,我们这里创建一个空,并且在添加文件夹和核心引用处勾选WEB API。  然后点击创建,这里我们项目就创建完成了。然后我们开始文件里面的配置,如跨域等。

    2024年02月04日
    浏览(62)
  • SSIS对SQL Server向Mysql数据转发表数据 (三)

    1、在控制流界面,在左侧的组件里,添加一个“ 序列容器组件 ”和一个“ 数据流任务组件 ”  2、双击数据流任务,进入到数据流界面,然后再在左面添加一个OLE DB 源组件、目标源组件  3、右键源组件,编辑,选择好相关信息,点击确定  4、点击源组件,然后把源组件和

    2024年02月15日
    浏览(45)
  • SSIS对SQL Server向Mysql数据转发表数据 (一)

    开发工具 Visual Stuido 2019 、SSIS、SQL Server 2016、Mysql 8.0.30 1、配置VS2019的添加相应的功能,勾选SQL Server Data Tools,下载就行 我用的VS2019版本还需要下载下面几个插件,链接我放在下面了 Microsoft Analysis Services Projects - Visual Studio Marketplace Microsoft Reporting Services Projects - Visual Studio Ma

    2024年02月15日
    浏览(37)
  • SQL Server 数据库之SQL Server 数据库的安全设置

    数据库服务器是所有应用的数据中转站,若数据库服务被恶意攻击,可能会造成数据泄露、数据丢失、数据被恶意篡改等诸多无法挽回的损失; 所以,对数据库进行安全设置是每一个数据库管理人员都应掌握的知识; SQL Server 登录模式分为 “Windows 身份验证模式” 和 “SQL

    2024年02月06日
    浏览(80)
  • sql数据库怎么备份,sql 实时备份

    在当今互联网时代,数据已经成为企业的核心资产。然而,数据的安全性和完整性面临硬件问题、软件故障、人工操作错误等各种威胁。为了保证数据的安全,实时备份已经成为公司必须采取的重要措施之一。下面我们就重点介绍SQL实时备份的重要实施方法。 SQL实时备份的必

    2024年02月10日
    浏览(63)
  • SQL Server数据库使用SQL Server代理实现数据库自动备份

    在现实中,为了保证数据的安全和完整,防止人为错误和硬件故障等造成的数据丢失和损坏,就需要用到数据库的备份,不同的数据库方法有所差别,我这边主讲SQL Server数据库的备份和使用SQL Server代理作业实现数据库的定时备份。 目录 一、开启SQL Server代理 1、找到SQL Serv

    2024年02月09日
    浏览(83)
  • sql 创建sql server数据库文件组

    可以在建立数据库时候创建 如: CREATE DATABASE MyDB ON PRIMARY                           --主文件组和主要数据文件   ( NAME=\\\'MyDB_Primary\\\',    FILENAME= \\\'c:MyDB_Prm.mdf\\\'), FILEGROUP MyDB_FG1                   --用户定义文件组1   ( NAME = \\\'MyDB_FG1_Dat1\\\',    FILENAME = \\\'c:MyDB_FG1_1.ndf\\\'),  --次要数

    2024年02月08日
    浏览(66)
  • 【Sql】Sql Server 2008 数据库附加,错误:9004

    【问题描述】 数据库文件存在异常状况,有可能是因为硬盘有坏区引起的。 附加数据库的时候,提示错误9004。 【解决方法】 假设数据库名称为:UFDATA_001_2023 请按顺序执行以下步骤: 1、将数据库的文件名:UFDATA_001_2023复制到别的位置留作备用; 2、新建数据库:UFDATA_001_

    2024年02月15日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包