假设有两个表,A表和B表,A表数据量少,B表数据量多的情况下
适应需求:为了A表中某些数据量的缺失原因,将A表数据全导入Navicate
具体方法看我的另一个文章----
查询出A表中的某个字段值,但是A表中某个字段值(假设username)是在B表中情况下
(其实就是根据条件没有查询出相应的结果)
举例子:下边这个左连接例子中 A表为主,B表为辅
SELECT a.*,b.username
FROM A a left join B b on a.userid = b.userid
// 原因:A表为主,A表中每个id去寻找B表中对应id
//如果让B表中对应id去找A表中id,那岂不是太浪费数据量多的B表资源
SELECT a.*,b.username
FROM B b left join A a on a.userid = b.userid
因为忽略一个前提条件:B表数据量大的情况下,从B表中拿出对应id和A表中id对比,这就忽略了一个主次关系,注意主次关系,一般情况下,用数据量少的表去找多的表id对比,否则浪费大量B表查询资源
全连接
两边都为主,左右两边都是可以输出为空的数据
解释:其实就是根据条件没有查询出相应的结果,有可能左边为空,有可能右边为空