Set @buildStmt2 = SUBSTRING (@query2,1,@pos2-1) +
’ as f into ##t2 ’ +
SUBSTRING (@query2,@pos2,len(@query2) - @pos2 + 1)
-- 构建中间全局临时表
EXEC (@buildStmt1)
EXEC (@buildStmt2)
-- 执行MINUS操作
Select f from ##t1
Where f NOT in (select f from ##t2)
-- 删除表
Drop table ##t1
Drop table ##t2
Set nocount off
End
Go
应用实例:
EXEC @p=sp_minus ’select categoryid from categories’,
’select categoryid,productid from products where productid < 12’