[英]using a where clause with a left join
我有這兩個表:
USER:
id name
1 John
2 Cian
3 Una
ATTR:
id name value user_id
1 LAST_LOGGED_IN 2016-10-10 1
1 ADDED 2015-01-01 1
1 ADDED 2015-01-01 2
並希望產生這個:
user_id user_name last_logged_in added
1 John 2016-10-10 2015-01-01
2 Cian NULL 2015-01-01
3 Una NULL NULL
我的嘗試是:
select USER.NAME, ATTR.VALUE as LAST_LOGGED_IN
from USER
left join ATTR on USER.ID = ATTR.USER_ID
where ATTR.NAME = "LAST_LOGGED_IN"
GROUP BY USER.NAME;
但這是不正確的。
select USER.NAME, IF(ATTR.NAME = 'LAST_LOGGED_IN',ATTR.VALUE,NULL) as LAST_LOGIN
from USER
right join ATTR on USER.ID = ATTR.USER_ID
GROUP BY USER.ID;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.