關於 SQL join 語句

2021-08-14 10:51:47 字數 1292 閱讀 3575

幾種sql json查詢語句如下圖:

其中 full outer join 連線無法在mysql中使用,可用 union 代替。

注意:union all 命令和 union 命令幾乎是等效的,不過 union all 命令會列出所有的值。

select [select_list] from [tablea] a left

join [tableb] b on a.key = b.key

select [select_list] from [tablea] a right

join [tableb] b on a.key = b.key

select [select_list] from [tablea] a left

join [tableb] b on a.key = b.key

where b.key

isnull

select [select_list] from [tablea] a right

join [tableb] b on a.key = b.key

where a.key

isnull

select [select_list] from [tablea] a inner

join [tableb] b on a.key = b.key

select [select_list] from [tablea] a full

outer

join [tableb] b on a.key = b.key

select [select_list] from [tablea] a full

outer

join [tableb] b on a.key = b.key

where a.key

isnull

or b.key

isnull

除下圖之外,還有一種笛卡爾積或者交叉聯合(cross join),不能用韋恩圖表示:

SQL join語句詳解

表一 person idname1劉備 2趙雲3華佗 4諸葛亮 表二 event idevent 1桃園結義 4七擒孟獲 5大意失荊州 6火燒連營 內連線是最常見的一種連線,只連線匹配的行。例 select from person p inner join event e on p.id e.id ...

sql join語句總結

所有的join語句都跟連線順序相關 1 cross join 交叉聯接 生成笛卡爾積後,一定不能寫on或where條件。eg select from table 2 a cross join table 1 b 2 inner join 內聯接 生成笛卡爾積後根據on條件篩選 eg select f...

精妙SQL語句 sql join語句

文章出處 精妙sql語句 sql join語句 說明 複製表 只複製結構,源表名 a 新錶名 b sql select into b from a where 1 1 說明 拷貝表 拷貝資料,源表名 a 目標表名 b sql insert into b a,b,c select d,e,f from...