河南网站开发培训,企业网站推广的一般策略,佛山专业网站建设报价,广州专业网站建设网页设计服务前言
我们知道,JOIN表的查询条件可以放在ON语句处,也可以放在 WHERE 语句处。
用 t2.status = 1 这条件举例:
方式1:放在 WHERE 语句处
SELECT t1.* FROM table1 t1
LEFT JOIN table2 AS t2 ON t2.k1 = t1.k2
WHERE t2.`status` = 1方式2:放在 ON 语句处
SELECT t1.*…前言
我们知道,JOIN表的查询条件可以放在ON语句处,也可以放在 WHERE 语句处。
用 t2.status = 1 这条件举例:
方式1:放在 WHERE 语句处
SELECT t1.* FROM table1 t1
LEFT JOIN table2 AS t2 ON t2.k1 = t1.k2
WHERE t2.`status` = 1方式2:放在 ON 语句处
SELECT t1.* FROM table1 t1
LEFT JOIN table2 AS t2 ON (t2.k1 = t1.k2 AND t2.`status` = 1)平时做开发我基本都是用 方式1,而 方式2 就较少使用,可能会有人像我一样,觉得这两种方式的查询结果是一样的,但其实不是的。
测试
建立测试表
用户表:
CREATE TABLE `users` (`uid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID',`name` varchar(255) NOT NULL COMMENT '昵称',PRIMARY KEY (`uid`