0
点赞
收藏
分享

微信扫一扫

mvsplat 的笔记

一、引言

概述:指的是从多张表中查询数据。

二、实操 

打开 DataGrip 进行尝试多表查询。

(1)表结构的准备以及数据的插入
(2)多表查询 
SELECT * FROM emp,dept;

出现这样的问题,就需要我们解决。下面介绍笛卡儿积的相关知识。

(3)笛卡儿积

概述:笛卡尔乘积是指在数学中,两个集合:A集合和B集合的所有组合情况。

在多表查询时,需要消除无效的笛卡尔积

例如:

所以刚刚我们查询的两张表:emp、dept ,就是它们所有的组合情况(17*6=102条)。

根据我们的需求,我们需要的是以下这种查询结果就可以了:(需要把无效的笛卡尔积消除掉

(4)解决方法:

我们要通过它们两张表,所关联的字段去解决这个问题。

所以让表 emp 的字段 dept_id等于 表 dept 的字段 id (dept_id = dept.id)就可以了。

SELECT * FROM emp,dept WHERE(emp.dept_id = dept.id) ORDER BY emp.id;

这就是我们所介绍和学习的多表查询。

三、多表查询的分类

多表查询的分类主要分为两类。

举报

相关推荐

算法笔记的笔记

商品的笔记

axios的笔记

自己的笔记

队列的笔记

Lambda的笔记

网页的笔记

我的笔记

0 条评论