如何 Return 某天执行某项操作的用户以及位置 SQL
How to Return Users on a Certain Day Who Performed an Action Along with Location SQL
对不起这个标题,我不知道该怎么称呼它。我正在寻找 SQL(首选)或 Pandas 可以带我离开我所在的地方。我正在尝试找到如何获取在某一天执行给定操作的用户,同时还包括一些关于他们的信息
在我的用户 table 我有:
userid, country, ...
1, a
2, b
3, a
4, a
我还有一个跟踪用户事件的事件table
userid, date, event
1, 1/1/15 login
2, 1/1/15 login
3, 1/1/15 view
1, 1/1/15 view
我希望能够 return table 包含当天登录的不同用户并包含国家/地区,或者计算每天登录的用户数量国家。
我完成了:
select date(events.date), events.userid, users.language
from events
join users
on
users.userid = events.userid
where events.date > '2015-01-15' and events.date < '2015-01-17'
AND events.event LIKE %%%%LOGIN%%%%'
但这当然不会给我不同的用户
2015-01-15 1 a
2015-01-15 1 a
2015-01-15 1 a
...
我在 SQLFiddler 中为您创建了一个小演示。
如果您需要某个日期范围内的用户和国家/地区,可以使用以下查询:
-- USERs and Country by Date
select date(events.date),
events.userid,
users.country
from events
join users
on users.userid = events.userid
where events.date >= '2015-01-01' and events.date < '2015-01-02'
and events.event LIKE '%login%'
group by date(events.date),
events.userid,
users.country
如果您需要计算每个国家/地区在某个日期范围内登录的用户数量,您可以使用如下内容:
-- Country and Number of Users by Date
select date(events.date),
users.country,
count(distinct events.userid) number_of_users
from events
join users
on users.userid = events.userid
where events.date >= '2015-01-01' and events.date < '2015-01-02'
and events.event LIKE '%login%'
group by date(events.date),
users.country
对不起这个标题,我不知道该怎么称呼它。我正在寻找 SQL(首选)或 Pandas 可以带我离开我所在的地方。我正在尝试找到如何获取在某一天执行给定操作的用户,同时还包括一些关于他们的信息
在我的用户 table 我有:
userid, country, ...
1, a
2, b
3, a
4, a
我还有一个跟踪用户事件的事件table
userid, date, event
1, 1/1/15 login
2, 1/1/15 login
3, 1/1/15 view
1, 1/1/15 view
我希望能够 return table 包含当天登录的不同用户并包含国家/地区,或者计算每天登录的用户数量国家。
我完成了:
select date(events.date), events.userid, users.language
from events
join users
on
users.userid = events.userid
where events.date > '2015-01-15' and events.date < '2015-01-17'
AND events.event LIKE %%%%LOGIN%%%%'
但这当然不会给我不同的用户
2015-01-15 1 a
2015-01-15 1 a
2015-01-15 1 a
...
我在 SQLFiddler 中为您创建了一个小演示。
如果您需要某个日期范围内的用户和国家/地区,可以使用以下查询:
-- USERs and Country by Date
select date(events.date),
events.userid,
users.country
from events
join users
on users.userid = events.userid
where events.date >= '2015-01-01' and events.date < '2015-01-02'
and events.event LIKE '%login%'
group by date(events.date),
events.userid,
users.country
如果您需要计算每个国家/地区在某个日期范围内登录的用户数量,您可以使用如下内容:
-- Country and Number of Users by Date
select date(events.date),
users.country,
count(distinct events.userid) number_of_users
from events
join users
on users.userid = events.userid
where events.date >= '2015-01-01' and events.date < '2015-01-02'
and events.event LIKE '%login%'
group by date(events.date),
users.country