原料

--用户表
create table "SysUser"(
"UserId" serial, --用户Id,自增
"UserName" character varying(50), --用户名
"Pwd" character varying(50), --密码
"Status" smallint, --状态
primary key("UserId") --设置UserId主键
)
--角色表
create table "SysRole"(
"RoleId" serial, --角色Id
"RoleName" character varying(50), --角色名称
primary key("RoleId")
)
--用户角色关系表
create table "SysUserRole"(
"UserId" integer,--用户Id
"RoleId" integer,--角色Id
primary key("UserId","RoleId")
) --测试数据
insert into "SysUser" ("UserName","Pwd") values ('username1','');
insert into "SysUser" ("UserName","Pwd") values ('username2','');
insert into "SysUser" ("UserName","Pwd") values ('username3','');
insert into "SysUser" ("UserName","Pwd") values ('username4','');
insert into "SysRole" ("RoleName") values ('Role1');
insert into "SysRole" ("RoleName") values ('Role2');
insert into "SysUserRole" ("UserId","RoleId") values (1,1);
insert into "SysUserRole" ("UserId","RoleId") values (2,2);
insert into "SysUserRole" ("UserId","RoleId") values (3,1);
insert into "SysUserRole" ("UserId","RoleId") values (3,2);

SysUser

SysRole

SysUserRole

1.查询某一用户拥有的所有角色

select * from "SysRole" where "RoleId" in (
select "RoleId" from "SysUserRole" where "UserId"=3
)

数据输出

2.查询某一角色下的所有用户

select * from "SysUser" where "UserId" in(
select "UserId" from "SysUserRole" where "RoleId"=1
)

数据输出

3.查询所有的用户角色信息

select u."UserName",r."RoleName" from "SysUserRole" m
left join "SysUser" u on m."UserId"=u."UserId"
left join "SysRole" r on m."RoleId"=r."RoleId"
order by u."UserName"

数据输出

最新文章

  1. javascript实现数据结构与算法系列:线性表的静态单链表存储结构
  2. HD1083 二分图,匈牙利算法
  3. Numpy之ndarray与matrix
  4. hdu1217Arbitrage--解题报告
  5. zend studio里面这块注释是用什么快捷键按出来的?
  6. 【译】使用Jwt身份认证保护 Asp.Net Core Web Api
  7. 最近最久未使用页面淘汰算法———LRU算法(java实现)
  8. 野路子码农系列(3)plotly可视化的简单套路
  9. haproxy使用演示--技术流ken
  10. PHP数组array_multisort排序详解
  11. nginx第三方库安装以及连接memcache
  12. js处理有序列表、js处理无序列表
  13. SpringMVC FistMVC详解
  14. java测试感受
  15. 关于Maven整合SSM项目中报错Invalid bound statement (not found):的问题解决
  16. android适配不同分辨率的手机
  17. Jquery easyui 重置按钮,easyui 清空表单,Jquery easyui 重置表单
  18. 关于android webview 设置cookie的问题
  19. JMeter Ant Task 生成的*.jtl打开之后request和response data是空的,怎样让其不是空的呢?
  20. touchscreem

热门文章

  1. 给iOS开发新手送点福利,简述UIAlertView的属性和用法
  2. solr删除全部索引数据
  3. springboot 邮件服务
  4. Rhythmk 学习 Hibernate 03 - Hibernate 之 延时加载 以及 ID 生成策略
  5. leetcode26
  6. Halcon中二维码解析函数解码率和时长的优化方法
  7. 发布spring jar包, 报错
  8. 7.25 7figting!
  9. (1)activiti认识以及数据库和插件配置
  10. k8s 1.10 关于rbac的坑