SQL 中 left join、right join、inner join 的区别
生活随笔
收集整理的這篇文章主要介紹了
SQL 中 left join、right join、inner join 的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
SQL 三個 join 的含義
- left join(左聯接):返回左表中的所有記錄以及和右表中的聯接字段相等的記錄。
- right join(右聯接):返回右表中的所有記錄以及和左表中的聯接字段相等的記錄。
- inner join(等值聯接):只返回兩個表中聯接字段相等的記錄。
下面將以atable、btable為例進行講解。
atable
btable
1、使用 left join
select * from atable as a left join btable as b on a.name = b.name;
可以看到,tableA join tableB的結果中,既有tableA中的所有記錄,同時還包括了與右表中聯接字段相等的記錄,所以返回的記錄總數一定是大于或等于tableA的記錄總數。
2、使用 right join
right join 和 left join 恰好相反,就不贅述了。
3、使用 inner join
select * from atable as a inner join btable as b on a.name = b.name;
可以看到,tableA inner join tableB的結果中,只包含了tableA與tableB聯接字段相等的記錄。可以看作是tableA和tableB的交集。
總結
以上是生活随笔為你收集整理的SQL 中 left join、right join、inner join 的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux环境搭建:设置主机名颜色、设置
- 下一篇: SQLAlchemy 报错 NotSup