章節2 SQL之多表連線

2022-09-05 01:03:17 字數 2065 閱讀 3798

sql的多表連線關係有:內連線、外連線和交叉連線。

先建立兩個用於演示的表:

tb_characters:

idcharacter1內向

2外向3中性性格

tb_colors:

idcolor1綠色

2紅色4藍色

一、內連線:

內連線(join  或 inner join):內連線取交集

示意圖:

結果:

二、外連線:

外連線可分為:左連線、右連線、完全外連線。

1、左連線(left join):

示意圖:

結果:

2、右連線(right join):

示意圖:

結果:

3、完全外連線:

示意圖:

結果:

三、交叉連線( cross join ):

交叉連線產生連線所涉及的表的笛卡爾積。

select

*from tb_characters cross

join tb_colors;

結果:

補充:

1、如下可獲取內連線結果:

select

*from tb_characters,tb_colors where tb_characters.id = tb_colors.id;

2、如下可獲取交叉連線結果:

select

*from tb_characters,tb_colors;

oracle之多表連線

資料庫中的資料不可能都放在同一張表中,這樣效率是很低下的,所以都是分表儲存。但是我們往往需要獲取的資料並不會都集中在一張表中,而是多張表都會涉及到,那怎麼從多張表中獲取到我們的資料?這個時候就會用到多表連線 在多個表之間通過一定的連線條件,使表之間 發生關聯,進而能從多個表之間獲取資料。連線就是從笛...

SQL多表連線

oracle8 select a.b.from a,b where a.id b.id 相當於左聯接 select a.b.from a,b where a.id b.id 相當於右聯接 oracle9 支援以上的寫法,還增加了leftjoin right join等 select a.b.from...

SQL多表連線

1.內連線 查詢兩張表共有部分 等值連線 語法 select from 表a inner join 表b on a.key b.key 2.左連線 把左邊表的內容全部查出,右邊表只查出滿足條件的記錄 語法 select from 表a left join 表b on a.key b.key 3.右連...