SQL中FROM多個表概念詳解

一、基本概念

在SQL語句中,FROM是一個非常重要的關鍵詞,用於指定查詢的表和關聯方式。在多個表的情況下,可以使用JOIN子句來進行表的關聯。JOIN子句指定了如何將多個表連接起來,並且可以指定連接的條件。通常,只有指定了FROM子句中的表才能夠使用SELECT語句查詢,同時也可以進行其他的操作。

二、內連接的使用

內連接是指只返回兩個表中滿足條件的數據。內連接可以使用JOIN關鍵字,具體如下:

SELECT *
FROM table1
JOIN table2
ON table1.column = table2.column

上述語句可以從table1和table2兩個表連接,並且指定了連接條件。該查詢將返回僅滿足條件的行。

內連接可以有多個,並且可以使用不同的JOIN關鍵字來指定:

SELECT *
FROM table1
INNER JOIN table2
ON table1.column = table2.column
INNER JOIN table3
ON table2.column = table3.column

上述查詢中,使用了兩個INNER JOIN,指定了三個表之間的連接條件。

三、左連接的使用

左連接是指返回左邊表中所有的數據,以及右邊表中滿足條件的數據。左連接使用LEFT JOIN關鍵字:

SELECT *
FROM table1
LEFT JOIN table2
ON table1.column = table2.column

上述查詢中,將返回table1中所有的行,同時返回滿足條件的table2的行,沒有匹配的行將返回NULL。

左連接同樣可以添加多個,例如:

SELECT *
FROM table1
LEFT JOIN table2
ON table1.column = table2.column
LEFT JOIN table3
ON table2.column = table3.column

上述查詢中,將返回table1中所有的行,同時返回滿足條件的table2和table3的行,沒有匹配的行將返回NULL。

四、右連接的使用

右連接是指返回右邊表中所有的數據,以及左邊表中滿足條件的數據。右連接使用RIGHT JOIN關鍵字:

SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column = table2.column

上述查詢中,將返回table2中所有的行,同時返回滿足條件的table1的行,沒有匹配的行將返回NULL。

右連接同樣可以添加多個,例如:

SELECT *
FROM table1
RIGHT JOIN table2
ON table1.column = table2.column
RIGHT JOIN table3
ON table2.column = table3.column

上述查詢中,將返回table3中所有的行,同時返回滿足條件的table2和table1的行,沒有匹配的行將返回NULL。

五、全連接的使用

全連接是指返回兩個表中所有的數據,如果沒有匹配的行將返回NULL。全連接使用FULL OUTER JOIN關鍵字:

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column

上述查詢中,將返回table1和table2中所有的行,如果沒有匹配的行將返回NULL。

全連接同樣可以添加多個,例如:

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column
FULL OUTER JOIN table3
ON table2.column = table3.column

上述查詢中,將返回table1,table2和table3中所有的行,如果沒有匹配的行將返回NULL。

原創文章,作者:VWHMP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/371733.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
VWHMP的頭像VWHMP
上一篇 2025-04-23 18:08
下一篇 2025-04-23 18:08

相關推薦

發表回復

登錄後才能評論