如何在SQL中显示每个类别的一天中最繁忙的时间(大多数视图/行)?

问题描述 投票:0回答:1

我正在处理一个假想的数据集(https://github.com/Codecademy/datasets/tree/master/twitch)有关Twitch的信息,并尝试找出每个流媒体游戏一天中最忙的时间(通过“ stream.csv”表)。

因此,我正在使用:

strftime(format, column)

剥离时间戳的小时。

我尝试使用:

SELECT strftime('%H', time), game, MAX(COUNT(*))
FROM stream
GROUP BY 2
ORDER BY 3;

但是SQL不允许双重聚合。

我仍如何显示每个游戏在一天中什么时候最多观看/观看?

提前感谢!

sql sqlite aggregate-functions analysis
1个回答
0
投票

使用窗口功能:

SELECT s.*
FROM (SELECT strftime('%H', time), game, COUNT(*),
             ROW_NUMBER() OVER (PARTITION BY game ORDER BY COUNT(*) DESC) as seqnum
      FROM stream
      GROUP BY 1, 2
     ) s
WHERE seqnum = 1;
© www.soinside.com 2019 - 2024. All rights reserved.