这样的SQL语句怎么写?

netharry 2018-12-28 07:50:13
Role 表
RoleID RoleName
1 管理员
2 普通用户

Function 表
FunctionD FunctionName
1 编辑
2 创建
3 删除

RoleFunction 表
RoleFunction RoleID FunctionID
1 1 1
2 1 2

最后我想得到所有Role没被授权的Function表:

RoleName FunctionName
管理员 删除
普通用户 编辑
普通用户 创建
普通用户 删除

多谢!




...全文
93 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
netharry 2018-12-28
  • 打赏
  • 举报
回复
真是非常感谢!
RINK_1 2018-12-28
  • 打赏
  • 举报
回复

SELECT A.*
FROM
(SELECT * FROM ROLE A
JOIN FUNCTION B ON 1=1) AS A
LEFT JOIN ROLEFUNCTION B ON A.ROLEID=B.ROLEID AND A.FUNCTIONID=B.FUNCTIONID
WHERE ISNULL(B.ROLEID,'')=''
netharry 2018-12-28
  • 打赏
  • 举报
回复
二楼该几个字: Role 表 RoleID RoleName 1 管理员 2 普通用户 Function 表 FunctionID FunctionName 1 编辑 2 创建 3 删除 RoleFunction 表 RoleFunctionID RoleID FunctionID 1 1 1 2 1 2 最后我想得到所有Role没被授权的Function表: RoleName FunctionName 管理员 删除 普通用户 编辑 普通用户 创建 普通用户 删除

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧