gpt4 book ai didi

mysql - sql : Counting growth over time

转载 作者:行者123 更新时间:2023-11-29 02:35:47 24 4
gpt4 key购买 nike

几周前我发布了有关此问题的帖子,但我不认为我问清楚了这个问题,因为我得到的答案不是我想要的。我认为最好重新开始。

我正在尝试查询数据库以检索一段时间内唯一条目的数量。数据看起来像这样:

| 用户ID
1 |一个
1 |乙
2 |乙
3 |一个
4 |乙
4 | C
5 |

我希望查询结果看起来像这样

时间跨度 |计数(不同的 用户 ID)
第 1 天到第 1 天 | 2
第 1 天到第 2 天 | 2
第 1 天到第 3 天 | 2
第 1 天到第 4 天 | 3
第 1 天到第 5 天 | 4

如果我做类似的事情

SELECT COUNT(DISTINCT `UserID`) FROM `table` GROUP BY `Day`

,不同的计数将不考虑前几天的用户 ID。

有什么想法吗?我正在使用的数据集非常大,因此多次查询和后处理需要很长时间(这就是我目前的做法)。

谢谢

最佳答案

你可以使用子查询

示例表

create table visits (day int, userid char(1));
insert visits values
(1,'a'),
(1,'b'),
(2,'b'),
(3,'a'),
(4,'b'),
(4,'c'),
(5,'d');

查询

select d.day, (select count(distinct userid) from visits where day<=d.day)
from (select distinct day from visits) d

关于mysql - sql : Counting growth over time,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5317917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com