Sql 連線查詢

2022-08-10 18:48:12 字數 3345 閱讀 4252

sql表連線查詢(inner join、full join、left join、right join)

前提條件:假設有兩個表,乙個是學生表,乙個是學生成績表。

表的資料有:

一、內連線-inner jion :

最常見的連線查詢可能是這樣,查出學生的名字和成績:

select s.name,m.mark from student s,mark m where s.id=m.studentid
上面就是我們最常見的inner join,即內連線,把符合student.id=mark.studentid 條件的元組才選出來,也可以寫成:

select s.name,m.mark from student s inner

join mark m on s.id=m.studentid

符合條件的只有兩條結果,查出結果為:

二、左連線-left join:

左連線是把左邊的表的元組全部選出來:

select s.name,m.mark from student s left

join mark m on s.id=m.studentid

上面語句就是把左邊的表,即student表中的元組全部選出,儘管有些分數表是沒資料的,也選了出來,選出的結果為:

三、右連線-right join:

右連線就是把右邊表的資料全部取出,不管左邊的表是否有匹配的資料:

select s.name,m.mark from student s right

join mark m on s.id=m.studentid

上面的語句就是把mark分數表的資料全部取出來,不管student表中是否有資料匹配,如下圖所示:

四、全連線-full join:

把左右兩個表的資料都取出來,不管是否匹配:

select s.name,m.mark from student s full

join mark m on s.id=m.studentid

如下圖所示,學生表和成績表的資料都取了出來:

比較常用的是第一種,內連線,而且是用這種寫法:

select s.name,m.mark from student s,mark m where s.id=m.studentid
sql表連線查詢(inner join、full join、left join、right join)

前提條件:假設有兩個表,乙個是學生表,乙個是學生成績表。

表的資料有:

一、內連線-inner jion :

最常見的連線查詢可能是這樣,查出學生的名字和成績:

select s.name,m.mark from student s,mark m where s.id=m.studentid
上面就是我們最常見的inner join,即內連線,把符合student.id=mark.studentid 條件的元組才選出來,也可以寫成:

select s.name,m.mark from student s inner

join mark m on s.id=m.studentid

符合條件的只有兩條結果,查出結果為:

二、左連線-left join:

左連線是把左邊的表的元組全部選出來:

select s.name,m.mark from student s left

join mark m on s.id=m.studentid

上面語句就是把左邊的表,即student表中的元組全部選出,儘管有些分數表是沒資料的,也選了出來,選出的結果為:

三、右連線-right join:

右連線就是把右邊表的資料全部取出,不管左邊的表是否有匹配的資料:

select s.name,m.mark from student s right

join mark m on s.id=m.studentid

上面的語句就是把mark分數表的資料全部取出來,不管student表中是否有資料匹配,如下圖所示:

四、全連線-full join:

把左右兩個表的資料都取出來,不管是否匹配:

select s.name,m.mark from student s full

join mark m on s.id=m.studentid

如下圖所示,學生表和成績表的資料都取了出來:

比較常用的是第一種,內連線,而且是用這種寫法:

select s.name,m.mark from student s,mark m where s.id=m.studentid

SQL 連線查詢

連線查詢是指乙個查詢同時涉及到兩個及以上的表。包括 等值連線,自然連線,非等值連線,自身連線,外連線,復合查詢.等.color red size large 1.等值連線 於非等值連線 size color 查詢每個學生及選課的情況 select student.sc.from student,sc...

sql連線查詢

sql連線查詢的連線查詢分為交叉連線 內連線 外連線。以下面兩張表為例演示連線查詢。a表 b表 分為左連線 右連線 完全外連線 左連線 left join 或left outer join select from a left outer join b on a.aid b.bid返回結果 返回a表...

SQL連線查詢

筆記區 多表連線查詢 1,等值連線 select from table1,table2 where table1.t1no table2.t2no 2,非等值 笛卡爾積 特點 查詢個數為乘積 作用 模擬大量資料 交叉連線 自連線內連線 把符合條件的查出來 以上都是內查詢 外連線 可以把不存在員工的部...