博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL-99语法:外连接与内连接-(左内连接多表和查询)
阅读量:4292 次
发布时间:2019-05-27

本文共 933 字,大约阅读时间需要 3 分钟。

-- 外连接:

不仅将两个表中满足条件的数据查询出来,也将不满足条件的数据查询出来

左外连接:不仅将两个表中满足条件的数据查询出来,也将不满足条件的左表中的数据查询出来

右外连接:不仅将两个表中满足条件的数据查询出来,也将不满足条件的右表中的数据查询出来

满外连接:(oracle中支持)

将左右表中不满足条件的数据同时查询吃来

-- 内连接

只是将满足条件的数据查询出来,称为内连接

oracle中支持满外连接:

将左右表中的数据同时查询出来

多表查询并不难,首先需要屡清楚表与表之间的结构关系

先说一下多表之间的关系:

MySQL-99语法:外连接与内连接-(左内连接多表和查询)

开始提交查询代码:

具体代码:

-- 账户 - 账户角色 - 角色 - 角色权限 - 权限

实现:查询的内容

select SO.`OP_NAME`,SR.`ROLE_NAME`,SF.`FUNC_NAME`

from `sys_op` SO

实现:账户表与账户角色中间表 关联

LEFT JOIN `sys_op_role` SOR

ON SO.`OP_ID` = SOR.`OP_ID`

实现:账户角色中间表与角色表关联

LEFT JOIN `sys_role` SR

ON SOR.`ROLE_ID`=SR.`ROLE_ID`

实现:角色表与角色权限中间表的关联

LEFT JOIN `sys_role_func` SRF

ON SR.`ROLE_ID` = SRF.`ROLE_ID`

实现:角色权限中间表与权限表的关联

LEFT JOIN `sys_func` SF

ON SRF.`FUNC_ID` = SF.`FUNC_ID`

查询的条件,可以多个条件限制,实现更加精确的查询

where SO.`OP_ID`=100

注意:SQL语句的加载顺序,才能更好的查询自己想要的内容

结果:注意内容重复,可以实现添加相关的语句,实现过滤

MySQL-99语法:外连接与内连接-(左内连接多表和查询)

去重代码:DISTINCT

SELECT DISTINCT SO.`OP_NAME`,SR.`ROLE_NAME`,SF.`FUNC_NAME`

后面相同

结果:

MySQL-99语法:外连接与内连接-(左内连接多表和查询)

最近比较忙,谢谢各位的关注,后续会提供更多的资料与学习方法供大家参考学习。

见谅,晚安

转载地址:http://uhggi.baihongyu.com/

你可能感兴趣的文章
python pipe模块用法
查看>>
安装完 MySQL 后必须调整的 10 项配置
查看>>
开发者必备的 12 个 JavaScript 库
查看>>
http错误码
查看>>
python 多线程
查看>>
sipp命令 各参数含义
查看>>
搜集的动植物分类、检索网站
查看>>
ffmpeg源码分析之媒体打开过程
查看>>
Ubuntu/centos/redhat/SUSE sipp安装(带rtp支持,3.5.1版本)
查看>>
周鸿祎:很多程序员聪明,但我一看就知道他不会成功
查看>>
编译程序遇到问题 relocation R_X86_64_32 against `.rodata' can not be used when making a shared object;
查看>>
Const指针 、 指向const的指针 、引用、指针
查看>>
GDB调试命令
查看>>
常见数据类型的字节数
查看>>
gcc/g++ 编译常见问题
查看>>
【设计模式】 工厂模式实例 C++ , 利用工厂模式写一个计算器
查看>>
opencv
查看>>
【图像处理】 一、OSTU分割
查看>>
Android常用的框架有哪些
查看>>
SSL 证书创建与部署
查看>>