sql外链接

2018-06-20  本文已影响0人  setone

如图,两张表,分别是角色(sys_role)和菜单(sys_role_menu)


角色表
菜单表

内连接

看到这张表,我第一感觉通过role_id字段查询出menu_id

select m.menu_id,r.role_id from sys_role r,sys_role_menu m where r.role_id = m.role_id ;
//等价于 select m.menu_id,r.role_id from sys_role r INNER JOIN sys_role_menu m  on r.role_id = m.role_id;

通过这个方式获取menu_id(菜单id)

image.png

外连接

左外连接
select m.menu_id,r.role_id from sys_role r left     join sys_role_menu m  on r.role_id = m.role_id ;
image.png

左表为主

右外连接
select m.menu_id,r.role_id from sys_role r right     join sys_role_menu m  on r.role_id = m.role_id ;
image.png

右表为主
我的理解是左外连接是不停地拿右边的数据去匹配左边的数据
右外连接是不停地拿左边的数据去匹配左边的数据

上一篇 下一篇

猜你喜欢

热点阅读