[英]How to return all the rows which has not match in join table and if it had match check the condition?
何時返回表User
所有行
1. a row has not any match with join table ex **UserDetails**
2. a row has a match in **UserDetails**, check some condition ex: user location is **IND**
示例表
User
-----------------------
id name
-----------------------
1 Hearaman
2 Ramse
3 Temmy
4 Robert
UserDetails
-----------------------------
id user_id location
1 3 USA
2 4 IND
Expected results
--------------------------
id name location
--------------------------
1 Hearaman null
2 Ramse null
4 Robert IND
您可以使用left join
並進行過濾
select u.id, u.name, ud.location
from User u
left join UserDetails ud on ud.user_id = u.id
where ud.user_id is null or
ud.location = 'IND';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.