SQL JOIN 关联条件和 where 条件的异同

Inner join

对于 inner join,条件写到 on 和 where 部分是一样的。

sql 复制代码
select count(1) 
 from web_site 
 join web_page 
 on web_site_sk=wp_web_page_id 
 where web_city='Pleasant Hill' and wp_access_date_sk=1;

输出

sql 复制代码
0
sql 复制代码
select count(1)
 from web_site 
 join web_page 
 on web_site_sk=wp_web_page_id 
 and web_city='Pleasant Hill' and wp_access_date_sk=1;

输出

sql 复制代码
0

Outer join

对于 outer join 写到 on 和 where 部分结果是不一样的。

写到 where 部分代表着 join 结果的过滤。

sql 复制代码
select count(1) 
 from web_site 
 left outer join web_page 
 on web_site_sk=wp_web_page_id 
 where web_city='Pleasant Hill' and wp_access_date_sk=1;

输出

sql 复制代码
0

left outer join on 条件是关联条件,对于 left outer join,关联不上,左边的数据也要输出。

sql 复制代码
select count(1)
 from web_site 
 left outer join web_page 
 on web_site_sk=wp_web_page_id 
 and web_city='Pleasant Hill' and wp_access_date_sk=1;

输出

sql 复制代码
32
相关推荐
程序员黑豆14 分钟前
Java 注释详解:单行、多行与文档注释的完整指南
java·前端·ai编程
剪刀石头布啊27 分钟前
antd中可编辑表格中巧用useWatch实现联动高性能效果,以及定制延伸学习
前端
油丶酸萝卜别吃1 小时前
前端转全栈学习路线
前端·学习
浮生望1 小时前
前端路由进阶:History API原理与手写HistoryRouter
前端
陆枫Larry2 小时前
JavaScript 中的竞态是什么,为啥会有竟态?
前端
IvorySQL3 小时前
PostgreSQL 日报 | JOIN 与外键优化(8 月 9 日)
数据库·postgresql
ltl4 小时前
自治数据库十年回顾:Peloton、NoisePage、OtterTune 到云原生 auto-tuning
数据库
上海安当技术4 小时前
半天接入:USBKey RESTful API + C 动态库,Web 和 C/S 两套集成路径实战
前端·后端·restful·集成·usbkey
DevUI团队4 小时前
从“即兴创作”到“规格先行”,华为云码道(CodeArts)代码智能体持续深耕企业级规范驱动开发能力
前端·人工智能·后端
weixin_431600445 小时前
NestJS 入门(3):Guard 如何挡住未登录请求?
前端·后端·学习·nest.js