减号是一个SQL集合操作,它从第一个表中选择元素,然后删除Oracle中第二个SELECT语句返回的行。在SQL Server中,我们可以使用EXCEPT来做同样的事情。
在将我的项目从oracle迁移到SQL Server时,我注意到了一个不同之处。如果第一个结果集没有记录,减号将带来第二个SELECT语句的结果集。但在SQL Server中,EXCEPT不返回任何内容。在这种情况下我能做些什么?我正在迁移我的项目,并且想在SQL Server中执行同样的减号函数。
谢谢你的帮忙
发布于 2011-04-06 04:38:15
Oracle MINUS和SQL Server之间没有区别,但。
它们的目的是做同样的事情。
之外,其他内容都匹配
发布于 2011-04-06 04:25:49
这将检查第一个查询中的任何结果集是否为,如果有结果,则运行。如果不是,它只运行第二个查询。
IF EXISTS (SELECT NULL
FROM ... <first query criteria>
WHERE ...)
BEGIN
SELECT ... <first query>
EXCEPT
SELECT ... <second query>
END
ELSE
SELECT ... <second query>
https://stackoverflow.com/questions/5557991
复制相似问题