多表查詢語(yǔ)句用于從多個(gè)表中獲取數(shù)據(jù)。可使用 join 關(guān)鍵字指定表關(guān)系,常用類型為:inner join(匹配行)、left join(左表全行,右表匹配行或 null)、right join(右表全行,左表匹配行或 null)、full join(兩個(gè)表全行)。編寫步驟:確定表、指定 join 類型、指定連接條件、選擇顯示列。
SQL 多表查詢語(yǔ)句
如何編寫多表查詢語(yǔ)句?
多表查詢語(yǔ)句用于從多個(gè)表中獲取數(shù)據(jù)。要編寫多表查詢,可以使用 JOIN 關(guān)鍵字,它指定表之間的關(guān)系。
常用的 JOIN 類型:
INNER JOIN:僅返回具有匹配行的所有行。
LEFT JOIN:返回左表的全部行,以及匹配右表行的右表行。如果右表中沒(méi)有匹配項(xiàng),則返回 NULL。
RIGHT JOIN:與 LEFT JOIN 相反,返回右表的全部行以及匹配左表行的左表行。
FULL JOIN:返回兩個(gè)表的全部行,無(wú)論是否有匹配項(xiàng)。
編寫多表查詢語(yǔ)句的步驟:
確定要連接的表:確定需要從哪些表中獲取數(shù)據(jù)。
指定 JOIN 類型:根據(jù)需要選擇 INNER JOIN、LEFT JOIN、RIGHT JOIN 或 FULL JOIN。
指定連接條件:使用 ON 子句指定表之間的匹配條件。
選擇要顯示的列:使用 SELECT 子句選擇要從表中顯示的列。
示例:
查詢 Customers 表和 Orders 表,找出每個(gè)客戶的姓名和訂單數(shù)量:
SELECT c.Name, COUNT(o.OrderID) AS OrderCount FROM Customers c INNER JOIN Orders o ON c.CustomerID = o.CustomerID GROUP BY c.Name;
登錄后復(fù)制
結(jié)果:
| Name | OrderCount |
|---|---|
| John Doe | 3 |
| Jane Smith | 2 |
| Mike Jones | 4 |






