2017-11-28 14 views
-1

문제가 있음을 알고 있지만 해결책을 찾을 수 없습니다.각 사용자의 날짜 받기 - 아무런 활동이없는 경우에도

날짜 범위를 생성 한 임시 테이블이 있습니다.

TEMPTABLE

Date 
11/1/2017 
11/2/2017 
11/3/2017 
11/4/2017 
11/5/2017 

이 테이블에 가입해야합니다 :

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 

답변

2

사용자와 교차 결합 날짜가 left join이고 다른 테이블이 그 위에 있습니다.

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 
+0

감사합니다 !!!! 나는 그것이 이런 것이었다는 것을 알았다. 그냥 그것에 올 수 없었다. –