如何赚积分
帮助
管理商铺 发布产品 发布求购 寻找商机

TOP

034.mysql-left join时把过滤条件写到where中、还是on中的区别;如果是inner join效果相同

[ 本报记者:admin | 时间:2022-03-24 20:23:38 | 浏览:280次 | 来源:034.mysql-left join时把过滤条件写到where中、还是on中的区别;如果是inner join效果相同

034.mysql-left join时把过滤条件写到where中、还是on中的区别;如果是inner join效果相同

tst00表


tst01表


复制代码

CREATE TABLE `tst00` (

 `id` int NOT NULL AUTO_INCREMENT,

 `json_v` text COLLATE utf8mb4_general_ci,

 `num` int DEFAULT NULL,

 PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;


CREATE TABLE `tst01` (

 `id` int NOT NULL AUTO_INCREMENT,

 `json_v` text COLLATE utf8mb4_general_ci,

 `num` int DEFAULT NULL,

 PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

复制代码




-------





left  join


第一种过滤条件 写在最后用  where 过滤,先关联上再做筛选


SELECT *

FROM `tst00` a

left join

`tst01` b

on a.id = b.id

where b.num  = 2






第二种  用on过滤 ,数量是随着左表的,先关联,过滤条件只会把没有筛选到的右表的内容置为空


SELECT *

FROM `tst00` a

left join

`tst01` b

on a.id = b.id

and  b.num  = 2







inner join  效果一样


复制代码

SELECT *

FROM `tst00` a

join

`tst01` b

on a.id = b.id

where b.num  = 2 ;



SELECT *

FROM `tst00` a

join

`tst01` b

on a.id = b.id

and  b.num  = 2

复制代码


034.mysql-left join时把过滤条件写到where中、还是on中的区别;如果是inner join效果相同

http://www.51relaw.com/news/bencandy.php?&fid=37&id=1230
 《 金兰云推广信息发布 》( 2022-03-24 20:23:38 01 版) 【 】【打印繁体】【投稿】 【关闭】【评论】 【返回顶部】(责编:admin)
[上一篇]js实现动态表格(添加删除) [下一篇]海量数据分析更快、更稳、更准。G..

评论

称  呼:
验 证 码:
内  容:

相关栏目

热门文章

·供应南昌水源地无线微波图..
·MR摩飞AXD-608腕式血压计预..
·11月1日福州钢材市场冷轧板..
·电液伺服拉扭疲劳试验机产..
·DNP快速接头VVVX系列介绍
·11月1日太原钢材市场冷轧板..
·11月1日贵阳钢材市场冷轧板..
·内存耗尽后,Redis会发生什..

最新文章

·腕式血压计预防高血压MR摩..
·MR摩飞AXD-608腕式血压计预..
·盗图参加影赛还把作者P掉获..
·对讲机频段解析:选择合适..
·MR摩飞按摩仪MF201头脸美容..
·PVC塑胶地板可能出现的常见..
·石头转阳如何绑红绳
·DNP快速接头VVVX系列介绍

推荐文章