您好,请教 Sql Server 2000 两个结果集相减应该用什么链接 ?(20分)

W

wjlsnet

Unregistered / Unconfirmed
GUEST, unregistred user!
您好,也就是 Sql Server 2000 中有没有 函数相当于 Oracle 中的 minus ?
Oracle 中 :
select * from table
minus
select * from table where ID = 1

可以得到两个的差集 ,Sql Server 2000 中应该怎么实现 ?
谢谢您
 
SELECT * From Table WHERE ID <> 1

或者用 NOT IN
SELECT * FROM Table
WHERE ID NOT IN(SELECT ID FROM Table WHERE ID = 1)
 
楼上 : 谢谢您, 那不过是我想将问题表达清楚的例子而已 。

想请教的是 : 如何在 Sql Server 2000 中求两个集合的差集 ? 就是 Sql Server 2000中
有无类似 Oracle 的 minus 的链接符 ?

谢谢
 
請說說差集的意思!
 
Sql Server 2000好像没有oracle的类似方法,至少我找了很久也没有发现,:)
用下面子查询的方法效率是比较低的:
SELECT * FROM Table1
WHERE ID NOT IN(SELECT ID FROM Table2 WHERE ID = 1)
我通常是用连接来求的:
SELECT a.* FROM Table1 a left join Table2 b on a.id=b.id
where b.id is null
(Table1表除去Table2中id相同的记录)


 
多人接受答案了。
 
顶部