內連線 外連線 交叉連線

2021-08-19 18:21:20 字數 1586 閱讀 3380

一:連線查詢

根據兩個表或者多個表的列之間的關係,從這些表中查詢資料。

目的:實現多個表查詢操作。

二:連線型別

連線分為三種:內連線、外連線、交叉連線。

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 表名...