【发布时间】:2019-09-30 06:52:06
【问题描述】:
我正在弄清楚是否可以列出用户需要拥有的所有 4 个角色,每个角色都带有“是”或“否”声明。例如。
SELECT DISTINCT Grantee, GranteeKind, RoleName, WhenGranted,
CASE
WHEN RoleName='Manager' THEN 'Yes'
WHEN RoleName='Assistant' THEN 'Yes'
WHEN RoleName='Executive' THEN 'Yes'
WHEN RoleName='Deputy' THEN 'Yes'
ELSE NULL
END AS "Already granted?"
FROM DBC.RolesM
WHERE Grantee='UserName'
AND RoleName IN
('Manager',
'Assistant',
'Executive',
'Deputy');
我的查询获取以下结果,它是 100% 正确的。
Grantee GranteeKind RoleName WhenGranted Already Granted?
UserName User Manager 2018-01-30 Yes
UserName User Assistant 2016-01-30 Yes
不过,我想知道是否有可能得到这样的东西,所以我们对未分配的角色有明确的答案。
Grantee GranteeKind RoleName WhenGranted Already Granted?
UserName User Manager 2018-01-30 Yes
UserName User Assistant 2016-01-30 Yes
UserName User Executive 2016-01-30 No
UserName User Deputy 2016-01-30 No
【问题讨论】: