做数据库开发或BI开发的经常会涉及到很多个表,那么各个表间的连接如何区分呢?总感觉这样的问题很简单,但是这些基本的问题在面试中经常会被问道,
今天就总结一下这个问题,提醒自己和伙伴们不要忽视这类问题:
左连接和右连度接区别为:语法公式不同、基础表不同、结果集不同。
一、语法公式不同
1、左问连接:左连接的关键字是left join,语法公答式为select *from dave a left join bl b on a .id=b .id。
2、右连接:右连接的关键字是right join,语法公式为select *from dave a right join bl b on a .id=b .id。
二、基础表不同
1、左连接:左回连接的基础表为left join左侧数据表答。
2、右连接:右连接的基础表为right join右侧数据表。
三、结果不同
1.左连接是已左边表中的数据为基准,若左表有数据右表zhidao没有数据,则显示左表中的数据右表中的数据显示为空。
左联接的结果集包括 LEFT 子句中指定的左表的所有行,而不仅仅是联接列所内匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。
2.右联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为容左表返回空值。