MySQL數據庫左外連接的概念:
左外連接是一種聯結方式,在MySQL的SELECT語句中,用LEFT JOIN關鍵字表示。它可以將兩個表中的記錄按照指定的字段進行對應,并保留左表中所有的記錄,而右表中如果沒有符合條件的記錄,則相應的字段值為NULL。
SELECT * FROM 左表 LEFT JOIN 右表 ON 左表字段 = 右表字段;
舉例說明:
現有兩張表格T1、T2,其中T1表中有三個用戶的信息,T2表中有兩個用戶的信息,如下圖所示:
+------+------+--------+ +------+------+--------+
| id | name | age | | id | name | age |
+------+------+--------+ +------+------+--------+
| 1 | A | 20 | | 2 | B | 25 |
+------+------+--------+ +------+------+--------+
| 2 | B | 25 | | 3 | C | 30 |
+------+------+--------+ +------+------+--------+
| 3 | C | 30 | +------+------+--------+
執行以下左外連接的SQL語句:
SELECT * FROM T1 LEFT JOIN T2 ON T1.id = T2.id;
結果如下:
+------+------+--------+------+------+--------+
| id | name | age | id | name | age |
+------+------+--------+------+------+--------+
| 1 | A | 20 | NULL | NULL | NULL |
+------+------+--------+------+------+--------+
| 2 | B | 25 | 2 | B | 25 |
+------+------+--------+------+------+--------+
| 3 | C | 30 | NULL | NULL | NULL |
+------+------+--------+------+------+--------+
可以看到,由于T1表中有三個用戶的信息,而T2表中只有兩個用戶的信息,所以執行左外連接時,左表T1中沒有與右表T2中id=3的記錄對應的用戶信息,對應列的值為NULL。
總結:
左外連接可以在兩個表之間建立起聯系,并保留左表中的所有記錄,即使右表中沒有相應的記錄。在實際的開發過程中,左外連接可以解決某些問題,例如查詢某一用戶是否有消費記錄等。
上一篇css始終在頁面底部
下一篇Mysql數據庫左表查詢