如何關(guān)聯(lián) SQL 中的兩個(gè)表
步驟 1:明確關(guān)聯(lián)類型
在關(guān)聯(lián)兩個(gè)表之前,需要明確所需的關(guān)聯(lián)類型:
內(nèi)連接(INNER JOIN):僅檢索滿足關(guān)聯(lián)條件的行。
外連接(OUTER JOIN):檢索所有行的結(jié)果,即使不滿足關(guān)聯(lián)條件。
步驟 2:指定條件
使用 JOIN 關(guān)鍵字將兩個(gè)表關(guān)聯(lián)起來(lái),并指定關(guān)聯(lián)條件。關(guān)聯(lián)條件必須在兩個(gè)表之間有一個(gè)匹配的列。
語(yǔ)法:
SELECT 列名 FROM 表名1 JOIN 表名2 ON 表名1.關(guān)聯(lián)列 = 表名2.關(guān)聯(lián)列
登錄后復(fù)制
步驟 3:選擇關(guān)聯(lián)類型
根據(jù)需要,指定以下任何一種關(guān)聯(lián)類型:
INNER JOIN:表名1 INNER JOIN 表名2 ON 條件
LEFT OUTER JOIN:表名1 LEFT OUTER JOIN 表名2 ON 條件
RIGHT OUTER JOIN:表名1 RIGHT OUTER JOIN 表名2 ON 條件
FULL OUTER JOIN:表名1 FULL OUTER JOIN 表名2 ON 條件
示例
假設(shè)我們有兩個(gè)表:學(xué)生 和 成績(jī)。我們想查找所有學(xué)生的平均成績(jī),條件是學(xué)生ID匹配。
查詢:
SELECT s.學(xué)生姓名, AVG(g.成績(jī)) AS 平均成績(jī) FROM 學(xué)生 s INNER JOIN 成績(jī) g ON s.學(xué)生ID = g.學(xué)生ID
登錄后復(fù)制
這將檢索所有學(xué)生及其平均成績(jī)。