如何不选择其他表中不存在的行

Posted

技术标签:

【中文标题】如何不选择其他表中不存在的行【英文标题】:How to not select rows that does not exists in other table 【发布时间】:2019-04-25 06:16:23 【问题描述】:

我不想选择其他表中不存在记录的行

我希望不选择 LOCATION 表中不存在但存在于 CYCLE_COUNT_REQUEST 中的 3 行

代码如下

【问题讨论】:

你能告诉我们你尝试了什么吗? Inner Join ? 嗨,用我使用的代码更新了我的问题 请粘贴代码,请勿截图! 我似乎无法发布代码,网站显示错误,所以我发布了屏幕截图 【参考方案1】:

使用NOT EXISTS

select *
from CYCLE_COUNT_REQUEST
where not exists (select 1 
                  from LOCATION  )

NOT IN:

 select *
    from CYCLE_COUNT_REQUEST
    where NOT IN(select 1 
                      from LOCATION  )

【讨论】:

以上是关于如何不选择其他表中不存在的行的主要内容,如果未能解决你的问题,请参考以下文章

如果表中的行不存在,我如何更新或插入它?

MYSQL - 仅当 LEFT JOIN 中的行不存在时才选择

MYSQL 返回其他数据库表中不存在的行 ID 列表

如果其他表中不存在 id,则获取不同的行并使用合并

表中不存在的行

如何从一个表中获取另一表中不存在的行