在MySQL中,JOIN用于將兩個或多個表的行連接在一起,以便根據特定的關聯條件從這些表中檢索相關數據。
JOIN的用法如下:
INNER JOIN(內連接):返回兩個表中滿足連接條件的行。語法如下:
SELECT 列名
FROM 表1
INNER JOIN 表2
ON 表1.列名 = 表2.列名;
LEFT JOIN(左連接):返回左表中所有行以及右表中滿足連接條件的行。如果右表中沒有匹配的行,則結果中右表的列將為NULL。語法如下:
SELECT 列名
FROM 表1
LEFT JOIN 表2
ON 表1.列名 = 表2.列名;
RIGHT JOIN(右連接):返回右表中所有行以及左表中滿足連接條件的行。如果左表中沒有匹配的行,則結果中左表的列將為NULL。語法如下:
SELECT 列名
FROM 表1
RIGHT JOIN 表2
ON 表1.列名 = 表2.列名;
FULL JOIN(全連接):返回左表和右表中所有行,并將滿足連接條件的行進行連接。如果左表或右表中沒有匹配的行,則結果中的對應列將為NULL。語法如下:
SELECT 列名
FROM 表1
FULL JOIN 表2
ON 表1.列名 = 表2.列名;
除了常見的INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN之外,MySQL還支持其他類型的JOIN,如CROSS JOIN(交叉連接)和SELF JOIN(自連接),用法可以根據具體的需求靈活運用。