1. 先确定数据要用到哪些表。
  2. 将多个表先通过笛卡尔积变成一个表。
  3. 然后去除不符合逻辑的数据(根据两个表的关系去掉)。
  4. 最后当做是一个虚拟表一样来加上条件即可。

注意:列名最好使用表别名来区别。

笛卡尔积

Demo:

左,右连接,内,外连接

l             内连接:

要点:返回的是所有匹配的记录。

  1. 2.         select * from a,b where a.x = b.x                                                 ////内连接

l             外连接有左连接和右连接两种。

要点:返回的是所有匹配的记录 外加 每行主表外键值为null的一条记录。辅表所有列为null值。

  1. select * from a left join b on a.x=b.x order by a.x  //左外连接或称左连接
  2. select * from a right join b on a.x=b.x order by a.x  //右外连接或称右连接

select子句顺序

子句

说明

是否必须使用

select

要返回的列或表示式

form

从中检索数据的表

仅在从表选择数据时使用

where

行级过滤

group by

分组说明

仅在按组计算聚集时使用

having

组级过滤

order by

输出排序顺序

limit

要检索的行数

MySQL的多表查询(笛卡尔积原理)相关推荐

  1. mysql教程多表查询_mysql重点,表查询操作和多表查询

    表单查询 1. 完整的查询语句语法 select distinct(* or 字段名 or 四则运算 )from 表名 where 条件 group by 条件 having 条件 order by ...

  2. day15(mysql 的多表查询,事务)

    mysql之多表查询 1.合并结果集 作用:合并结果集就是把两个select语句查询的结果连接到一起! /*创建表t1*/ CREATE TABLE t1(a INT PRIMARY KEY ,b V ...

  3. MySQL的多表查询

    文章目录 MySQL的多表查询 什么是多表联合查询 交叉连接(CROSS JOIN) 笛卡尔积 交叉连接 内连接 外连接 左连接 右连接 分组查询 GROUP BY单独使用 GROUP BY 与 GR ...

  4. MySQL数据库多表查询

    MySQL数据库多表查询 前言 在之前的文章MySQL数据库之SQL入门中,我们讲到了四类SQL中的DQL(数据库查询语言,用于查询表中数据),但是我仅仅用DQL去查询一张表中数据,而在实际的应用中, ...

  5. mysql的联表查询和去重复数据

    mysql的联表查询和去重复数据 /* SQLyog Ultimate v10.00 Beta1 MySQL - 5.7.17-log : Database - pusmtnew ********** ...

  6. Mysql的交叉表查询

    最近由于找工作,所以在恶补PHP和Mysql方面的东西,发现还是学习的不够.这几天看到关于mysql的交叉表查询的内容,根据自己的理解简单的尝试了下. 由于MonsterHunter World较火, ...

  7. mysql表deptno,MySQL:多表查询

    MySQL:多表查询 SELECT查询不但可以从一张表查询数据,还可以从多张表同时查询数据.查询多张表的语法是:SELECT * FROM 表1 表2,普通多表查询会获取M x N行记录,所以一般使用 ...

  8. mysql怎样两表查询_mysql怎样两表查询?

    mysql两表查询的方法:1.使用"select 字段列表 from 表1,表2 [where 条件]"进行查询:2.使用"SELECT 字段列表 FROM 表1 关键字 ...

  9. mysql数据库多表查询(内连接,外连接,自连接,子查询及案例分析)

    mysql数据库多表查询 之前接触的项目或者自己涉及的部分对于多表查询的使用都比较的少,常常是自己更具案例进行学习,最近见到的比较的多,所以今天就好好的总结一下,为下一步学习做准备! 1.多表查询关系 ...

最新文章

  1. linux ls 命令只显示目录和只显示文件
  2. Redis的Errorlog或者启动日志(错误日志)的配置
  3. matlab GUI——按下按钮在指定的坐标下绘制函数图像
  4. oracle 升级前备份,rac(exadata)升级前的备份及LVM快照的恢复
  5. Docker资源限制
  6. 电脑怎么打字切换中文_五个练习打字的网站,让你的速度飞起
  7. python爬虫从入门到放弃-python爬虫从入门到放弃(二)- 爬虫的深层原理
  8. Node.js 的原型注入方法
  9. 金阳光测试算法专题——精选小算法汇总
  10. 【Python成长之路】共享平台
  11. 计算机系统的确认与验证,确认与验证(指南).pdf
  12. 单片机音频信号分析仪
  13. 微商如何突破月入过万
  14. 计算机图形学设计线宽代码,计算机图形学线宽和线型处理.ppt
  15. MPP文件怎么打开 五种方法最合适
  16. 读书笔记(平凡的世界)
  17. Initialization of variable was never used; consider replacing with assignment to ‘_’ or removing it
  18. 计算机职业生涯测评,皮纹检测职业版——职业生涯规划指南测评系统
  19. 我的世界服务器vip账号和密码是多少,我的世界hypixel服务器会员有什么区别 hypixel服务器会员介绍...
  20. 干货!高速串行Serdes均衡之FFE

热门文章

  1. 信息学奥赛一本通 1116:最长平台 | OpenJudge NOI 1.9 12:最长平台 | 洛谷 B2097 最长平台
  2. 树形结构 —— 并查集 —— 基本操作
  3. 有一门课不及格的学生(信息学奥赛一本通-T1048)
  4. 好玩小游戏来啦,免费拿走,一个赞一个关注就够啦
  5. rust投递箱连接箱子_一种用于防盗的牛奶投递箱的制作方法
  6. flink sql udf jar包_编写Hive的UDF(查询平台数据同时向mysql添加数据)
  7. python中什么叫函数_Python 基础起步 (十) 什么叫函数?
  8. php通过smtp发送邮件源码_PHP SMTP发送邮件函数
  9. c gui qt 4编程第二版_我的QT5学习之路(一)——浅谈QT的安装和配置
  10. c语言程序错误提示一个找不到,C语言编辑程序出现错误提示.doc