inner join (等值連接) 只返回兩個表中聯結字段相等的行
left join (左連接)返回包括左表中的所有記錄和右表中聯結字段相等的記錄
right join (右連接)返回包括右表中的所有記錄和左表中聯結字段相等的記錄
full join (全連接) 該關鍵字在 MySQL 下是無法使用的,但在 SQL 下是存在的
INNER JOIN 語法:
INNER JOIN 連接兩個數據表的用法:
SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段號=表2.字段號
INNER JOIN 連接三個數據表的用法:
SELECT * FROM (表1 INNER JOIN 表2 ON 表1.字段號=表2.字段號) INNER JOIN 表3 ON 表1.字段號=表3.字段號
以此類推,先兩兩比較,然後拿前面兩個作爲標準的表的字段爲基準和第三個表比較。
什麼是前兩個作爲標準的呢?
如果是 INNER JOIN 那麼用哪個都可以,如果是 LEFT JOIN 最好用第一個表的字段比較第三個的。其實都差不多。
但是和第三個表進行比較,那麼後面的一定要取第三個表的相對應字段。這一點不能隨意拿一、二表中的字段。
注意事項:
- 在輸入字母過程中,一定要用英文半角標點符號,單詞之間留一半角空格;
- 在建立數據表時,如果一個表與多個表聯接,那麼這一個表中的字段必須是“數字”數據類型,而多個表中的相同字段必須是主鍵,而且是“自動編號”數據類型。否則,很難聯接成功。
- 代碼嵌套快速方法:如,想連接五個表,則只要在連接四個表的代碼上加一個前後括號(前括號加在FROM的後面,後括號加在代碼的末尾即可),然後在後括號後面繼續添加“INNER JOIN 表名X ON 表1.字段號=表X.字段號”代碼即可,這樣就可以無限聯接數據表了:)
- 括號不要隨便添加,只有需要和後面比較的情況下,纔可以在前面增加括號。