MySQL☞关联查询
关联查询:所需要的数据来源于多张表,通过表的连接查询(关联查询)来查询多张表中的数据
格式:
select 别名1 . */列名 , 别名2 . */列名
from 表名1 别名1 , 表名2 别名2
where 关联条件
现有两个表,如下图:
user表: dept表:

笛卡尔积:
进行关联查询的时候,没有加入关联条件,两张表之间的数据会进行任意组合的现象,就是笛卡尔积(数 学中的一个概念)。在表的关联查询中,尽量避免出现笛卡 尔积,必须要加入关联条件,用来去掉笛卡尔积。
下面就是出现笛卡尔积的情况,如下图(太多了截图没截全):

关联条件:用来描述两张表之间的关联关系,比如user表和dept表,user表中员工所在的部门的编号(deptno) 跟dept表中部门的编号(id)对应。
等值连接:关联条件是通过=连接起来,称为等值连接
user和dept之间的关联关系:u.deptno=d.id
如下图,加上关联条件后就不会出现笛卡尔积:

有其他条件的关联查询,如下图;

MySQL☞关联查询的更多相关文章
- MySQL关联查询总结
MySQL中经常使用关联查询,有机会总结下: 1 left join(左联查询): 返回包括左表中的所有记录和右表中联接字段相等的记录 例:select * from a left join b on ...
- mysql 关联查询 索引不起作用原因记录
业务逻辑如下:查询某篇文章的评论列表,且列出评论人及被评论人的昵称.头像. 先看一下表结构 评论表: 评论表的索引: 用户表: 用户表的索引: 查询语句如下: SELECT t1.comment_id ...
- mysql关联查询和联合查询
一.内联方式 1.传统关联查询 "select * from students,transcript where students.sid=transcript.sid and transc ...
- mysql 关联查询技巧
废话不多说,直接进入正题 #数据准备 班级表class: CREATE TABLE `class` ( `class_no` ) unsigned zerofill NOT NULL AUTO_INC ...
- [mysql] 关联查询sql记录
//查询账单关联订单 select o.id as id, o.order_no as orderNo, o.case_no as caseNo, o.send_time as sendTime, o ...
- MySQL 关联查询 内连接
内连接 [INNER| CROSS] JOIN无条件内连接:无条件内连接,又名交叉连接/笛卡尔连接第一张表种的每一项会和另一张表的每一项依次组合#例:mysql> select * ...
- mysql关联查询
mysql数据库的统计------生成统计信息 1.distinct:在一组之中将各个唯一的值找出来,如找出所有的品牌种类 mysql>select distinct brand_kind fr ...
- mysql 关联查询的执行顺序
STRAIGHT JOIN : 能强制按照顺序关联表(应该是)
- MySQL 关联查询 外连接 { LEFT| RIGHT } JOIN
左外连接: (以左表为基准)两张表做连接的时候,在连接条件不匹配的时候留下左表中的数据,而右表中的数据以NULL填充例:使用左连接把学生的数据全取出来,该学生没有学院信息的用NULL填充 mysql& ...
随机推荐
- 【转】Spring Boot Profile使用
http://blog.csdn.net/he90227/article/details/52981747 摘要: spring Boot使用@Profile注解可以实现不同环境下配置参数的切换,任何 ...
- CVPR 2016 paper reading (2)
1. Sketch me that shoe, Qian Yu, Feng Liu, Yi-Zhe Song, Tao Xiang, Timothy M. Hospedales, Cheng Chan ...
- waring L16: uncalled segement ----keil
1.keil中出现waring:uncalled segement 2.waring L16:这个应该是一个waring等级 3. 转载自 wpb3dm 在Keil C中,如果没有显式调用到定义过的 ...
- tomcat文件夹下各文件夹的作用
1.bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令). 很多环境变量的设置都在此处. 2.conf目录主 ...
- 【Javascript-ECMA6-Fetch详解】
Fetch 由于Fetch API是基于Promise设计,因此旧的浏览器并不支持该API,需要引用时引用es6-promise. 基本知识 fetch请求返回response格式 body Fetc ...
- ;(function($,window,document,undefined){})(jQuery,window,document)
;(function($,window,document,undefined){})(jQuery,window,doucment) 1.自调函数(function(){})() 2.好处是不会产生任 ...
- HTML学习日记之元信息meta标记
所谓meta标记就是用来描述一个HTML网页文档的属性,也称为元信息,这些信息并不会显示在浏览器的页面中,例如作者.日期和时间.网页描述.页面刷新等. 基本语法: <meta name = &q ...
- Git 学习笔记–基本操作
Git 与 SVN 不同,是分布式的版本控制系统,不需要主服务器即可工作,实际中为了方便各个工作者间同步工作,通常还是会设置主服务器. Git的设置及初始化: 设置全局用户信息: luojiahu@u ...
- 泛型List集合转化为DateTable
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; name ...
- centos install rabbitmq
安装rabbitmq 需要环境上有erlang,没有安装的可以参照下面的内容进行安装: https://www.erlang-solutions.com/resources/download.html ...