在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

SQL中过滤条件放on和where中的区别有哪些

91次阅读
没有评论

共计 843 个字符,预计需要花费 3 分钟才能阅读完成。

自动写代码机器人,免费开通

这篇文章主要介绍 SQL 中过滤条件放 on 和 where 中的区别有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

join 过程可以这样理解:首先两个表做一个笛卡尔积,on 后面的条件是对这个笛卡尔积做一个过滤形成一张临时表,如果没有 where 就直接返回结果,如果有 where 就对上一步的临时表再进行过滤。下面看实验:

先准备两张表:

SQL 中过滤条件放 on 和 where 中的区别有哪些

先执行 inner join:

select * from person p inner join account a on p.id=a.id and p.id!=4 and a.id!=4;

SQL 中过滤条件放 on 和 where 中的区别有哪些

select * from person p inner join account a on p.id=a.id where p.id!=4 and a.id!=4;

SQL 中过滤条件放 on 和 where 中的区别有哪些

结果没有区别,前者是先求笛卡尔积然后按照 on 后面的条件进行过滤,后者是先用 on 后面的条件过滤,再用 where 的条件过滤。

再看看左连接 left join

select * from person p left join account a on p.id=a.id and p.id!=4 and a.id!=4;

SQL 中过滤条件放 on 和 where 中的区别有哪些

这下看出来不对了,id 为 4 的记录还在,这是由 left join 的特性决定的,使用 left join 时 on 后面的条件只对右表有效(可以看到右表的 id= 4 的记录没了)

select * from person p left join account a on p.id=a.id where p.id!=4 and a.id!=4;

SQL 中过滤条件放 on 和 where 中的区别有哪些

where 的过滤作用就出来了。。。

右连接的原理是一样的。。

到这里就真相大白了 inner join 中 on 和 where 没区别,右连接和左连接就不一样了。

以上是“SQL 中过滤条件放 on 和 where 中的区别有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计843字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产精品无码久久综合 | 日韩一区二区三 | 西西大胆午夜人体视频 | 一区二区三区欧美日韩 | 精品国产午夜理论片不卡 | 国产午夜在线观看 | 性人久久久久 | 久久久久99精品成人片欧美 | 18末成年禁止进入免费观看 | 亚洲热播| 国产成人亚洲毛片 | 老司机精品影院一区二区三区 | jizz亚洲大全 | 国产精品久久久久国产精品 | 精品久久久久久无码国产 | 国产日韩精品一区二区三区 | 丝袜美腿亚洲一区二区图片 | 又粗又大又黄又爽的免费视频 | 国内精品久久毛片一区二区 | 国产精品亚洲一区二区三区正片 | 亚洲人色婷婷成人网站在线观看 | 日韩在线国产 | 精品久久在线 | 国产9 9在线 | 欧洲 | 国产日韩精品欧美一区灰 | 欧美一级在线观看 | 99久久九九免费观看 | 中文字幕一区二区在线观看 | 91久久国产成人免费观看资源 | 一 级 黄 色蝶 片 | 又粗又猛又黄又爽无遮挡 | 午夜啪啪片 | 草草视频手机在线观看视频 | 人禽杂交18禁网站 | a级毛片免费观看在线播放 a级毛片免费看 | 精品无码一区二区三区电影 | 四虎影视884a精品国产四虎 | 国产成a人片在线观看视频99 | 男女很舒服爽视频免费 | 精品熟女少妇av免费久久 | 亚洲免费人成视频观看 |