一、概要
JOIN对于接触过数据库的人,这个词都不陌生,而且很多人很清楚各种JOIN,还有很多人对这个理解也不是很透彻,这次就说说JOIN操作。
图片是很容易被接受和理解,所以尝试使用图片来说明一下。
二、JOIN分类
客官:小二,上JOIN分类!
……
小二:客官,新鲜出炉的JOIN分类图片来喽。
三、JOIN分类详解
客官:小二,速速详细道来!
小二:现在让小二来给您详细介绍。
INNER JOIN:
仅仅返回两个表中,匹配列相同的列值,所在行的数据。
- SELECT * FROM Table1 t1 INNER JOIN Table2 t2 ON t1.Col1 = t2.Col1
LEFT OUTER JOIN:
左外连接:返回左表的所有数据,并且在右表中不能匹配的列值,其坐在行则使用空值。
- SELECT * FROM Tables1 t1 LEFT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2
LEFT OUTER JOIN - WHERE NULL:
返回和右表不匹配的所有数据行
- SELECT * FROM Table1 t1 LEFT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t2.Col1 IS NULL
RIGHT OUTER JOIN:
右外连接:返回右表的所有数据,并且在左表中不能匹配的列值,其所做在行则使用空值。
- SELECT * FROM Tables1 t1 RIGHT OUTER JOIN Table2 t2 on t1.Col1 = t2.Col2
RIGHT OUTER JOIN – WHERE NULL:
返回和左表不匹配的所有数据行。
- SELECT * FROM Table1 t1 RIGHT OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1 WHERE t1.Col1 IS NULL
FULL OUTER JOIN:
完全连接可看作是左外连接和右外连接结果之和,返回两个表的所有数据,如果匹配列的值在两个表中匹配,那么返回数据行,否则返回空值。
- SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.Col1 = t2.Col1
FULL OUTER JOIN – WHERE NULL:
返回内连接以外的数据行,即匹配列坐在行以外的所有数据。
- SELECT * FROM Table1 t1 FULL OUTER JOIN Table2 t2 ON t1.ID = t2.ID WHERE t1.ID IS NULL OR t2.ID IS NULL
CROSS JOIN:
交叉连接不需要任何连接条件。这个会把两个表的的数据进行笛卡尔积操作。
- SELECT * FROM Table1 t1 CROSS JOIN Table2 t2
小二:小二已经介绍完毕,客官,请慢用。
大家好,今天我们来简单的聊一聊缓存问题。什么是缓存呢?它在系统设计中是在一个...
首先给扑克牌中每张牌设定一个编号,下面算法实现的编号规则如下: u 红桃按照从...
一、简介 本设计为硬币图像识别统计装置通过数码相机获取平铺无重叠堆积的硬币的...
我们知道微软将会在今年给Windows10更换全新设计的UI,让Windows10的界面更加整...
前言 关于Window,你了解多少呢?看看下面这些问题你都能答上来吗。 如果你遇到这...
从功能测试、性能测试、界面测试、安全性测试、易用性、兼容性测试、震动测试七...
git工作区,暂存区,版本库之间的关系: 我们建立的项目文件夹就是工作区,在初...
今日国内领先的智能数据服务运营商觉非科技完成近亿元A轮融资。本轮融资由和高资...
一、MVC MVC模式的意思是,软件可以分成三个部分。 视图(View):用户界面。 控...
本文实例讲述了jsp中page指令用法。分享给大家供大家参考。具体如下: 一、JSP ...