兩者皆在 WHERE 使用 = 比較運算子。差別在於:
SELECT 清單中移除重複欄位,僅保留一份。
使用 >, >=, <, <=, !>, !<, <> 等非等號運算子建立連接條件。
同一張表自我連接,需給予不同別名以區分。常用於階層式資料(如員工-主管關係)。
內連接僅回傳符合條件的列;外連接保留左表(*=)、右表(=*)或兩側(完整外連接)所有列,不符合條件處以 NULL 填補。
-- 左外連接:保留 person 所有列 SELECT name, memo FROM person, desc WHERE person.id *= desc.id;
外連接在統計報表中極為實用,例如列出所有人員及其獎懲記錄(即使無獎懲資料也會顯示人員名稱)。