一:連線查詢
根據兩個表或者多個表的列之間的關係,從這些表中查詢資料。
目的:實現多個表查詢操作。
二:連線型別
連線分為三種:內連線、外連線、交叉連線。
1:內連線
使用比較運算子(包括=、>、
<>、
>=、
<=、
!>和!<
)進行表間的比較操作,查詢與連線條件相匹配的資料。根據比較運算子不同,內連線分為等值連線和不等連線兩種。
1.1:等值連線
概念:在連線條件中使用(=)運算子,其查詢結果中列出被連線表中的所有列,包括其中的重複列。
select * from t_student s,t_class c where s.classid=c.classid等於
select * from t_student s inner join t_class c on s.classid =c.classid
1.2:不等連線
概念:在連線條件中使用除等號之外的運算子
select * from t_student s inner join t_class c on s.classid<>c.classid等於
select *from t_student s ,t_class c where s.classid<> c.classid
2:外連線
外連線分為左連線(left join)或左外連線(left outer join)、右連線(right join)或右外連線(right outer join)、
全連線(full join)或者全外連線(full outer join),簡單叫做左連線、右連線、全連線。
2.1:左連線
概念:返回左表中的所有行,如果左表中的行在右表中沒有匹配行,則結果中右表中的列返回空置。
左連線顯示左表中的全部行,和右表中中與左表相同的行。
2.2:右連線
與左連線相同只是剛好相反。
2.3:全連線
返回左表和右表中的所有行,當某行在兩乙個表中沒有匹配行,則另乙個表中的列返回null
3:交叉連線,也稱為笛卡爾積
概念:不帶where條件子句,它將返回被連線的兩個表的笛卡爾積,返回的行等於兩個錶行數的乘積,
select * from t_student cross join t_class等於
select * from t_student ,t_class
不帶有where語句
內連線 外連線 交叉連線總結
本篇文章總結了一下sql中的五種連線 內連線 左外連線 右外連線 全連線 交叉連線 一 內連線 full join full outer join 內連線查詢操作列出與連線條件匹配的資料行,它使用比較運算子比較被連線列的列值。內連線分三種 1 等值連線 在連線條件中使用等於號 運算子比較被連線列的列...
SQL Server內連線 外連線 交叉連線
在資料庫查詢中,我們常常會用到的表連線查詢,而我自己在工作中也是時常用這些表連線查詢。而就在剛剛我卻還沒有搞清楚資料庫表連線到底有哪幾種,這幾種表連線查詢方式又有什麼區別,實屬慚愧!藉以此文以謹記。資料庫表連線查詢分三種 內連線 外連線 交叉連線 那下面我們就來分別說說這三種連線。內連線又分為 等值...
連線 交叉連線 內連線 外連線 自連線
本文非原創 可分為 交叉連線 內連線 外連線 自連線 1.使用交叉連線 它是非限制連線,就是將兩個 不加任何條件的組合在一起,即第乙個 的所有記錄分別和第二個 的每一條記錄相連線 組合成新的記錄,連線後結果集的行數是兩個 的行數的乘積,列為兩表列之和。語法 1 select 列名列表 from 表名...