您好,登錄后才能下訂單哦!
小編給大家分享一下mysql連接查詢中and與where的區別是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
CREATE TABLE `student` ( `id` int(11) NOT NULL, `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, `age` int(11) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; INSERT INTO `student` VALUES (1, '張三', 12); INSERT INTO `student` VALUES (2, '李四', 12); INSERT INTO `student` VALUES (3, '王五', 12); INSERT INTO `student` VALUES (4, '趙六', 12); INSERT INTO `student` VALUES (5, '孫七', 12); INSERT INTO `student` VALUES (6, '王八', 12);
CREATE TABLE `grade` ( `id` int(11) NOT NULL, `sid` int(11) NULL DEFAULT NULL, `grade` int(11) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; INSERT INTO `grade` VALUES (1, 1, 100); INSERT INTO `grade` VALUES (2, 2, 80); INSERT INTO `grade` VALUES (3, 3, 99); INSERT INTO `grade` VALUES (4, 4, 66);
內連接中and和where沒有區別,都是取連接后的結果進行條件篩選。
2.1 不加條件
2.2 and 條件
2.3 where 條件
3.1 不加條件
3.2 and 條件
left join中以左表全匹配進行連接,之后使用and進行篩選;不符合條件的左表數據保留,右表數據為null。
3.3 where 條件
在left join 中以左表全匹配進行連接,之后以where進行篩選;只篩選符合條件的數據。
同3中left join,只是基表相反。
以上是“mysql連接查詢中and與where的區別是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。