我想检索表中RecipCodeCmte列中的值与RecipCodeIndiv列中的值不同的表中的所有行。这两列都存在于同一个表中(称为测试)。以下是我尝试构建此类查询:
select *
from test
EXCEPT RecipCodeCmte=RecipCodeIndiv
这是错误:
Msg 102, Level 15, State 1, Line 5
Incorrect syntax near 'RecipCodeCmte'.
我正在使用Microsoft SQL Server 2016 Management Studio。
答案 0 :(得分:1)
因为评论越来越长......
select *
from test
where RecipCodeCmte <> RecipCodeIndiv
您也可以使用!=
,但<>
更常被接受。
EXCEPT()。即。
select id
from table1
except
select id
from table2
这将返回仅在table1中的ID(也不在table2中)