【问题标题】:Filtering on join or where? Whats the difference?过滤加入或在哪里?有什么不同?
【发布时间】:2018-02-04 21:16:45
【问题描述】:

如果我在加入时进行过滤,我会得到以下结果: filtering on join

如果我在哪里过滤 Filtering on where

为什么我会得到不同的结果? 有什么不同? 什么时候需要在join中使用过滤器,什么时候需要在哪里使用过滤器?

【问题讨论】:

    标签: mysql sql pgadmin


    【解决方案1】:

    差异的原因是使用了LEFT JOIN

    当您在WHERE 子句内的LEFT JOINRIGHT 表上指定过滤器时,由于NULL 比较,连接转换为INNER JOIN

    右表上的过滤器应该总是并且只能在ON子句中指定。

    【讨论】:

    • 否,因为它也有内部连接。
    猜你喜欢
    • 2021-11-25
    • 2017-03-31
    • 2022-08-18
    • 2016-07-30
    • 2018-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多