sql內連結,外連線
為了方便我們建立兩張最簡易的表A、B,具體的表結構參看下面,來分析內連線與外連線的區別
圖1 圖2
兩個表要做連線,必須要有連線欄位,而在表A和表B中連線欄位是Aid和Bnamid,下圖說明了連線之間關係圖3
圖3
(1) 內連線:利用內連線(等值)就可獲取藍色的公共部分C,即圖3中的資料集C,結果集為如下:
圖4
其實select * from A join B on A.Aid=B.Bnamid;等價於select * from A,B where A.Aid=B.Bnamid;
注:非等值連線主要的話是針對一個範圍來查詢資料,自連線主要就是把1張表堪稱兩張表來用
(2)外連線:分為左外連線(left join)與右外連線(right join)
左外連線即公共顯示的藍色部分C1+顯示黃色的記錄集A1,顯示語句等價於select * from A,B where A.Aid=B.Bnamid(+);
圖 5
右外連線即公共顯示的藍色部分C1+顯示綠色的B1,顯示語句等價於select * from A,B where A.Aid(+)=B.Bnamid;
圖6
表A和表B情況是相對的,以上實驗都是A在左邊的情況,其實A left join B與B right join A的情況的結果集是一樣的。
相關文章
- sql 內連線和外連線SQL
- 內連線、外連線總結
- 【SQL】Oracle的內連線、左外連線、右外連線及全外連線SQLOracle
- Oracle內連線、外連線、右外連線、全外連線小總結Oracle
- SQL的四種連線:內連線 左外連線 右外連線 全連線SQL
- 深入理解SQL的四種連線-左外連線、右外連線、內連線、全連線SQL
- 內連線、外連線
- 你真的會玩SQL嗎?內連線、外連線SQL
- Oracle 表連線方式詳解(外連結、內連線、自連線)Oracle
- SQL Server中內連線和外連線的區別SQLServer
- oracle sql內連線_左(右)連線_全外連線_幾種寫法OracleSQL
- SQL SERVER 自連線、外連線SQLServer
- Oracle 內外連線 join 總結Oracle
- sql和hql中join語句區別,以及hibernate中內連線,迫切內連線,左外連線,迫切左外連線,右外連線的區別(合集)...SQL
- 例項解析外連線 內連線 自連線 全連線
- T-SQL學習中–內聯接,外連線,交叉連線SQL
- Oracle 左外連線、右外連線、全外連線小總結Oracle
- MySQL筆記3——內連線/外連線、多表連線MySql筆記
- MYSQL語法:左連線、右連線、內連線、全外連線MySql
- SQL的外連線對內部表的限制SQL
- SQL Server連線SQL Server、SQL Server連線ORACLE 連結伺服器SQLServerOracle伺服器
- mysql 左連線,右連線,內連結,exists等MySql
- 外連線轉換為內連線的情況
- 轉載:內連線與外連線的區別
- 【SQL】一條外連線和內連線混合使用的SQL語句搞定同事一迷茫需求SQL
- Mysql——內外連線,事物,索引MySql索引
- 資料庫外連線,自然連線,內連線,條件連線,等值連線關係及詳解資料庫
- mysql 外連線總結MySql
- SQL 改寫系列十:半連線轉內連線SQL
- 行的儲存(塊內連線與塊外連線)
- 3.DQL資料查詢語言(內連線,外連線,自連線)
- 內連線、左連線、右連線
- SQL改寫系列九:外連線轉內連線的常見場景與錯誤SQL
- Oracle左外連線、右外連線、完全外連線以及(+)號用法Oracle
- 內聯,左外聯,右外聯,全連線,交叉連線 的區別
- MYSQL學習筆記23: 多表查詢(自連線內連線+左右外連線)MySql筆記
- SQL改寫系列九:外連線轉內連線的常見場景與錯誤-2SQL
- 【SQL】表連線 --半連線SQL