又是用户角色权限,求SQL写法

黄正文 发布于 2013/05/15 12:31
阅读 735
收藏 0

用户、角色、权限都是多对多关系,

请问如何查询用户A拥有的所有权限。

限制为一条语句:

我找到了查角色的语句:select u.name,r.name from user u join user_role ur on u.user_id = ur.user_id join role r on r.role_id = ur.role_id where u.name = ?

查权限的SQL,本人实在是写不出来了,求帮助。

以下是问题补充:

@黄正文:表结构很简单 user表,user_id,name role表,role_id,name user_role表,user_id,role_id,user_role_id permission表,permission_id,name role_permission表,role_id,permission_id,role_permission_id (2013/05/15 12:33)
加载中
0
终曲
终曲

user和permission没有直接关联?

那就简单了,你那个应该是对的

黄正文
黄正文
用户关联角色,角色关联权限
0
黄正文
黄正文

select u.name as '用户名',r.name as '角色名',p.name as '权限' from user u
 join user_role ur on u.user_id = ur.user_id
  join role r on r.role_id = ur.role_id
 join role_permission rp on r.role_id = rp.role_id
  join permission p on rp.permission_id = p.permission_id
where u.name = 'admins'

已解决,不知道有问题没

返回顶部
顶部