概述
在开发时,我们一般只进行单表查询,但有时候也会涉及到多表查询。内联查询和外联查询都是为了联合多张表进行信息查询。这里只是简单的说明几种联合查询如何使用,具体详细说明可以参看参考链接
联合查询
假设有两张表t1和t2,共同字段为a
内联查询
select * from t1 inner join t2 on t1.a == t2.a
将表t1和t2中满足条件的数据查找出来,拼接成一行
外联查询
左联查询
select * from t1 left outer join t2 on t1.a == t2.a
将表t1中的全部数据以及表t2中满足条件的数据拿出来,表t2中不满足的不加入结果表中并用NULL替代
右联查询
select * from t1 right outer join t2 on t1.a=t2.a
将表t2中的全部数据以及表t1中满足条件的数据拿出来,表t1中不满足的不加入结果表中并用NULL替代
全联查询
显示t1、t2两边中的所有行,即把左联结果表+右联结果表组合在一起,然后过滤掉重复的。
select * from 1 full outer join t2 on t1.a=t2.a