MySQL查询 - 每天查找"新"用户

Cha*_*eck 5 mysql aggregate

我有一个包含以下字段的数据表

EventID        : Int, AutoIncrement, Primary Key
EventType      : Int                             ' Defines what happened
EventTimeStamp : DateTime                        ' When the Event Happened
UserID         : Int                             ' Unique
Run Code Online (Sandbox Code Playgroud)

查询需要告诉我整个集合中每天的新UserID发生了多少事件.因此,对于每一天,存在多少具有在任何前一天不存在的UserID的事件.我已经尝试了很多,而且我每天都可以获得独特的用户,但无法确定如何每天获得"新"用​​户.

Cha*_*eck 2

感谢大家的帮助 - 我已投票赞成该帮助。这就是我所做的:

我创建了这 2 个视图(我需要最终得到一个视图,并且必须创建 2 个视图,因为您似乎无法在视图中嵌套 select 语句)。

目击事件:

select min(to_days(`Events`.TimeStamp)) AS Day0,
    `Events`.TimeStamp AS TimeStamp,
    `Events`.UserID AS UserID
from `Events` group by `Events`.UserID order by `Events`.UserID
Run Code Online (Sandbox Code Playgroud)

新用户:

select count(distinct Sightings.UserID) AS Count,
    date(Sightings.TimeStamp) AS Date from Sightings
    group by date(Sightings.TimeStamp)
Run Code Online (Sandbox Code Playgroud)