SQL SELECT語句比方說,我有表:與用戶,角色和權限
- 用戶
- Users_in_Roles
- 角色
- Rights_in_Roles
- 權利
鍵是標準(UserFk,RoleFk,RightFk)
現在的問題是:如何獲得所有用戶在右側角色(id = 100)
我不知道如何觸及這個問題。請幫助併爲我的英語感到抱歉。
SELECT [dbo].[System_Users].[Id]
,[UserName]
,[FirstName]
,[LastName]
,[Email]
,RoleFk
,[dbo].[System_Roles].Name
FROM [dbo].[System_Users]
INNER JOIN [dbo].[System_Roles_System_Users]
ON [dbo].[System_Roles_System_Users].UserFk = [dbo].[System_Users].Id
INNER JOIN [dbo].[System_Roles]
ON [dbo].[System_Roles].Id = [dbo].[System_Roles_System_Users].RoleFk
WHERE ?
我tryied某事像,你能告訴我什麼IW錯了嗎?
SELECT
DISTINCT System_Users.Id,
System_Users.FullName
FROM System_Users
INNER JOIN Dict_Rights_System_Users
ON System_Users.Id = Dict_Rights_System_Users.UserFk
INNER JOIN System_Roles_System_Users
ON System_Roles_System_Users.UserFk = System_Users.Id
WHERE
RightFk = 136
OR
136 IN (SELECT Dict_Rights_System_Roles.RightFk FROM Dict_Rights_System_Roles WHERE
Dict_Rights_System_Roles.RoleFk = System_Roles_System_Users.RoleFk)
ORDER BY System_Users.FullName ASC
的StackOverflow是不是代碼編寫的服務。請閱讀[提問一個好問題的指南](http://tinyurl.com/so-hints)並顯示[你嘗試過的](http://whatyouhavetried.com)。 – 2013-03-05 10:17:20
你能告訴我們關於桌子的佈局嗎? – Guido 2013-03-05 10:17:44
好吧,我會張貼我的嘗試:) – Ellbar 2013-03-05 10:18:16