左關聯(Left Join)是MySQL中常用的關聯方式之一,它可以將兩張表聯合起來,以展示它們的關系。左關聯的兩張表,一個是主表(左表),一個是副表(右表)。左表中包含所有數據,副表中則可能含有一些主表中沒有的數據。
首先,我們需要在MySQL中創建兩張表,如下所示:
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ); CREATE TABLE `order` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_id` int(11) DEFAULT NULL, `product` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`), KEY `user_id` (`user_id`), CONSTRAINT `order_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) );
user表中包含了用戶id、姓名、年齡等信息,order表中包含了訂單id、用戶id、產品名稱等信息。需要注意的是,order表中的user_id列是一個外鍵,它指向user表中的id列。
接下來,我們可以使用LEFT JOIN命令將這兩張表連接在一起,并以user表為左表。命令如下:
SELECT * FROM user LEFT JOIN order ON user.id = order.user_id;
該命令中的SELECT *表示查詢所有列,FROM user表示查詢user表,LEFT JOIN order表示將user表與order表進行左關聯,ON user.id = order.user_id表示條件是user表中的id列等于order表中的user_id列。
最后,執行該命令后,我們將得到一個包含所有用戶信息以及其訂單信息的結果集。如果某個用戶沒有訂單,那么該用戶在結果集中的訂單相關列將會顯示為null。
上一篇mysql 左聯查
下一篇mysql怎么修改弱口令