mysql左连接on后 多个条件_数据库左右连接on后的限制条件问题

测试环境:

MySQL 5.7.19

HeidiSQL 9.3 数据库界面连接工具(挺好用的)

碰到的问题是:

Select * from t1 left outer join t2 on t1.id=t2.id and t2.age>18 和

Select * from t1 left outer join t2 on t1.id=t2.id where t2.age>18 两条语句返回结果集是否相同

之前在on后边只写过两张表的连接条件,没有考虑过左右连接on后面接列值有限制条件,所以仔细分析一下这个限制条件到底是有何效果

一、建立测试表格

1、t_basicInfo

mysql左连接on后 多个条件_数据库左右连接on后的限制条件问题_第1张图片

表t_basicInfo有3列信息值,第一列标记某唯一的id,后两列是基本信息

2、t_detailInfo

3893e32412aa48db017f9d4c618f6cba.png

表t_detailInfo有4列信息值,前三列与表t_basicInfo表示相同信息。但此表并没有表t_basicInfo所有的人的信息,只有部分人的详细信息(address)。

先来看下我们平时常写的左右连接语句,以左连接为例

#测

你可能感兴趣的:(mysql左连接on后,多个条件)