获取每个用户的日期 - 即使两者之间没有 activity
Getting dates for each user - even if no activity in between
我有一个问题,我觉得我知道这个但是我找不到解决方案。
我有一个临时文件 table,我在其中生成了一个日期范围。
临时表
Date
11/1/2017
11/2/2017
11/3/2017
11/4/2017
11/5/2017
需要加入这个 table:
Date User Permissions
11/1/2017 A 2
11/2/2017 A 4
11/5/2017 A 7
11/3/2017 B 1
11/4/2017 B 2
这就是我要找的结果。
但是,连接不会产生结果。
Date User Permissions
11/1/2017 A 2
11/2/2017 A 4
11/3/2017 A 0
11/4/2017 A 0
11/5/2017 A 5
11/1/2017 B 0
11/2/2017 B 0
11/3/2017 B 1
11/4/2017 B 2
11/5/2017 B 0
与用户和 left join
其他 table 交叉加入日期。
select t.date,u.user,coalesce(o.permissions,0) as permissions
from temptable t
cross join (select distinct user from other_tbl) u
left join other_tbl o on o.user=u.user and o.date=t.date
我有一个问题,我觉得我知道这个但是我找不到解决方案。
我有一个临时文件 table,我在其中生成了一个日期范围。
临时表
Date
11/1/2017
11/2/2017
11/3/2017
11/4/2017
11/5/2017
需要加入这个 table:
Date User Permissions
11/1/2017 A 2
11/2/2017 A 4
11/5/2017 A 7
11/3/2017 B 1
11/4/2017 B 2
这就是我要找的结果。 但是,连接不会产生结果。
Date User Permissions
11/1/2017 A 2
11/2/2017 A 4
11/3/2017 A 0
11/4/2017 A 0
11/5/2017 A 5
11/1/2017 B 0
11/2/2017 B 0
11/3/2017 B 1
11/4/2017 B 2
11/5/2017 B 0
与用户和 left join
其他 table 交叉加入日期。
select t.date,u.user,coalesce(o.permissions,0) as permissions
from temptable t
cross join (select distinct user from other_tbl) u
left join other_tbl o on o.user=u.user and o.date=t.date