[英]Giving default values for columns in join condition in oracle SQL Query
我有3張桌子
用戶(用戶名,用戶名)
1,Ram
2,Krishna
3,Madhu
4,Deepak
角色(roleid,roleName)
101,Agent
102,User
103,Manager
user_role_map(userId,roleId)
1,102
2,103
3,101
我需要在查詢中獲取以下詳細信息。 如果user_role_map中沒有用戶記錄,則我需要將RoleName設置為NONE
用戶名,用戶名,角色名
1,Ram,User
2,Krishna,Manager
4,Deepak,NONE
以下查詢未返回用戶ID 4
SELECT u.UserID
, u.UserName
, r.RoleName
FROM users u, roles r, user_role_map ur
WHERE u.UserID = ur.UserID
AND r.roleid = ur.roleid
試試看-未經測試,但對我來說似乎正確
select
u.UserID, u.UserName, IsNull(r.roleName, 'NONE')
from
users u
left join user_role_map ur on
ur.UserId = u.UserId
left join roles r on
r.roleid=ur.roleid
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.