1、如何使用 MySQL 的 JOIN 在兩個(gè)或多個(gè)表中查詢數(shù)據(jù)
可以在SELECT, UPDATE 和 DELETE 語(yǔ)句中使用 Mysql 的 JOIN 來(lái)聯(lián)合多表查詢。
JOIN 按照功能大致分為如下三類:
(1)INNER JOIN(內(nèi)連接,或等值連接):獲取兩個(gè)表中字段匹配關(guān)系的記錄。
(2)LEFT JOIN(左連接):獲取左表所有記錄,即使右表沒(méi)有對(duì)應(yīng)匹配的記錄。
(3)RIGHT JOIN(右連接):與 LEFT JOIN 相反,用于獲取右表所有記錄,即使左表沒(méi)有對(duì)應(yīng)匹配的記錄。
2、INNER JOIN語(yǔ)法示例
SELECT a.id,a.author,b.count FROM tbl_a a INNER JOIN tbl_b b ON a.author=b.author;
上邊語(yǔ)句等價(jià)于:
SELECT a.id, a.author, b,count FROM tbl_a a tbl_b b WHERE a.author = b.author;
3、LEFT JOIN語(yǔ)法示例
SELECT a.id,a.author,b.count FROM tbl_a a LEFT?JOIN tbl_b b ON a.author=b.author;
該語(yǔ)句會(huì)讀取左邊的數(shù)據(jù)表tbl_a的所有選取的字段數(shù)據(jù),即便在右側(cè)表tbl_b中沒(méi)有對(duì)應(yīng)的author字段值。
4、RIGHT?JOIN語(yǔ)法示例
SELECT b.id,b.author,a.count FROM tbl_a a?RIGHT?JOIN?tbl_b b ON a.author=b.author;
該語(yǔ)句會(huì)讀取右邊的數(shù)據(jù)表 tbl_b的所有選取的字段數(shù)據(jù),即便在左側(cè)表tbl_a中沒(méi)有對(duì)應(yīng)的author字段值。