所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

SQL两个表的连接?

发布时间:2020-04-12 08:37:48

资讯分类:sql  连接  联接  匹配  返回
SQL两个表的连接?

(inner) join on 内链接 与 where 子查询 是一样的。 主要有区别是 left join right join 以及 full join,功能和性能跟where有差异 inner join (等值连接) 只返回两个表中联结字段相等的行 WHERE 和INNER JOIN产生的连接关系,本质区别不详,结果一样。

(1)在效率上,Where可能具有和Inner join一样的效率。但基本可以肯定的(通过SQLServer帮助和其它资料,以及本测试)是Join的效率不比Where差。

(2)使用Join可以帮助检查语句中的无效或者误写的关联条件。

(3)从可读性角度来看,Where更直观。 left join left outer join (左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 左向外联接的结果集包括 LEFT OUTER 子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。 right join right outer join (右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。 full join full outer join (全连接) 完整外部联接返回左表和右表中的所有行 当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。 如果表之间有匹配行,则整个结果集行包含基表的数据值。 Join & where总结: where是两个表中的数据满足共同条件才会显示。 Jion on是相同条件匹配。 因此,除了inner join结果通常不一样。

留言与评论(共有 0 条评论)
   
验证码:
Top