聯接與並集
聯接: 基於公用列組合兩個表中的行,僅傳回符合的行。 (有關更多信息,請參閱維基百科)
並集: 組合多個查詢的結果,但刪除重複的行。
SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID
左外連接: 包括左表中的所有行以及右表中的匹配行,但忽略右表中不匹配的行表。
SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID WHERE m.ID = 1 UNION SELECT c.ID, m.model FROM cars c INNER JOIN models m ON c.model = m.ID WHERE m.ID = 3
包含右表中的所有行和左表中的符合行,但忽略左表中不符合的行。
Intersect:SELECT b.brand, COUNT(c.id) AS countOfBrand FROM brands b LEFT OUTER JOIN cars c ON b.ID = c.brand GROUP BY b.brand
範例
SELECT m.model, c.color FROM models m INNER JOIN colors c ON m.ID = c.ID WHERE m.model = 'Sports' AND c.color = 'Red'
以上是如何使用 SQL 連接和聯合有效地從多個表中檢索資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!