我有一个复杂的问题,这似乎是一见钟情简单:我在90天的窗口中有多少个不同的活跃用户?
- 了提供了90天的窗口,有多少不同的活跃用户没有我?
我将用来查询这个表的是登录表(在Redshift中托管),并且它有一个以logintime和usertoken作为用户标识符的时间戳。
每当我想回答这个某一天,查询简单易懂:因为我想有这个在每一个给定日期的数量的表格
select count (distinct usertoken)
from logins
where datediff('d',logintime,getdate()) <= 90
问题变得复杂。
07/07 100k
07/06 98k
07/05 99k
07/04 101k
(...)
窗口功能不帮我,因为我需要统计不同,而这是不可能在一个窗口函数。
据我所知,没有办法在SQL查询中迭代。
我应该怎么办?
请详细说明'每个给定的日期'。你是否通过了时间范围的下限和上限?或随机日期数组?在同一天可以有单个用户的重复条目吗?你的桌子有多大?行数?每行字节数/表定义。 –