数据仓库服务 GAUSSDB(DWS)-多表连接查询:多表查询中on条件和where条件的区别

时间:2024-04-02 16:41:03

多表查询中on条件和where条件的区别

从上面各种连接语法中可见,除自然连接和交叉连接外,其他都需要有on条件(using在查询解析过程中会被转为on条件)来限制两表连接的结果。通常在查询的语句中也都会有where条件限制查询结果。这里说的on连接条件和where过滤条件是指不含可以下推到表上的过滤条件。on和where的区别是:

  • on条件是两表连接的约束条件。
  • where是对两表连接后产生的结果集再次进行过滤。

简单总结就是:on条件优先于where条件,在两表进行连接时被应用;生成两表连接结果集后,再应用where条件。

support.huaweicloud.com/devg-820-dws/dws_04_1003.html