我正在尝试编写一个sql查询,但我发现一些困难。我想要的是:
假设我们有一个表,用于存储每天观看视频的次数。 例如:
- 日期:2011 年 11 月 14 日,video_id:3539,观看次数:125
- 并且:2011 年 11 月 15 日,video_id:3539,观看次数:162
(因此表存储 video_id,day,timeswatched)
我想要的是制作一个广告牌/图表类型,显示在日期之间(今天和昨天)8 个观看次数最多的(今天)视频的观看次数的百分比变化。 (请注意,今天或昨天可能根本没有观看视频 - 这是否是一个问题?)
结果应该是这样的:video-id: 3539 今天的观看次数增加/减少了 +23% 或 -44%(或..)(我们需要知道如何找到 23%)
谢谢!
最佳答案
Select Top8.idvideo, (vtoday.times - vyesterday.times) / vtoday.times
From
(select
Idvideo from Nviews
Where day = Curdate()
order by watches desc limit 8) top8
Inner join
NViews vtoday
on vtoday.day = curdate()
and vtoday.idvideo=top8.idvideo
Left outer join
NViews vyesterday
On vyesterday.day= Date_add( curdate(), interval -1 day) and
Vyesterday.idvideo = top8.idvideo
关于php - Sql 查询查找两个给定日期之间的 View 百分比差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8129284/