一、基本概念
在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