【问题标题】:SQL minus operation using join使用连接的 SQL 减法运算
【发布时间】:2014-08-18 14:06:37
【问题描述】:

我正在尝试构建一个 SQL 查询。 我有两个表tblA(data INT)tblB(data INT) 其中tblA 包含行1,2,3,4 和tblB 包含3,4,5,6。 我想要实现的是我想要加入 tblAtblB 并且在输出中我想要 tblA 的内容,这些内容不在 tblB 中。

减号。

如何在 SQL Server 2012 中使用 join 实现此目的

【问题讨论】:

  • 嗯,你明白join是什么意思吗?
  • @PeterRing 那时我还是个新手,但是新手总是不欢迎这样的 cmets。您本可以在答案中纠正我。
  • 谢谢@Jodrell。
  • @MaxRecursion 你是对的,我很抱歉

标签: sql sql-server


【解决方案1】:

好的,使用EXCEPT

SELECT data 
FROM   tblA

EXCEPT 

SELECT data 
FROM   tblB 

使用您的术语,UNION 是加号,EXCEPT 是减号。

【讨论】:

    【解决方案2】:

    您不需要加入。我想你正在寻找这个:

    select data from tblA
    where data not in (select data from tblB)
    

    你也可以使用EXCEPT

    select data from tblA
    EXCEPT
    select data from tblB
    

    【讨论】:

    • @AshReva 如果您查看了时间,您不应该这样问(除非您认为我可以在 10 秒内看到新帖子、复制、更改表格和发布)。事实上,自从第一次发布以来,Jodreil 已经对他的帖子进行了很多编辑,而我没有。尽管如此,即使是这样,我也不认为这是一个有用的评论。重点是帮助我认为的OP。
    • 如果伤害了你,我真的很抱歉。我现在不想详细说明,否则这不会结束。我同意我们应该帮助 OP。再次抱歉。
    • 这不是伤害。只是整个徽章/成就系统有一些后备。没有伤害。
    猜你喜欢
    • 2013-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多