摘要:SQL JOIN
假設有三個表,表1、表2、表3,用下列方式 Join 起來:
SELECT * FROM 表1
INNER JOIN 表2 ON 表1.K1=表2.K2
LEFT JOIN 表3 ON 表1.K1=表3.K3
在此例中有三種放 WHERE 條件式的位置:
1.
SELECT * FROM 表1
INNER JOIN 表2 ON 表1.K1=表2.K2
LEFT JOIN 表3 ON 表1.K1=表3.K3
WHERE 所有條件
2.
SELECT * FROM 表1
INNER JOIN 表2 ON (表1.K1=表2.K2 AND 表1及表2條件)
LEFT JOIN 表3 ON (表1.K1=表3.K3 AND 表1及表3條件)
3.
SELECT * FROM (SELECT * FROM 表1 WHERE 表1條件) AS 表1
INNER JOIN (SELECT * FROM 表2 WHERE 表2條件) AS 表2 ON 表1.K1=表2.K2
LEFT JOIN (SELECT * FROM 表3 WHERE 表3條件) AS 表3 ON 表1.K1=表3.K3