我想加入两个返回相同结构的不同商店过程的结果 以下列方式:
EXEC StoreProcedure1 p1
UNION
EXEC StoreProcedure2 p2
我意识到这是不可能的,sombody可以提出优雅的选择吗?
我相信我应该使用临时表吗?
由于
答案 0 :(得分:3)
您可以将存储过程转换为返回表的用户定义函数,并执行:
SELECT * FROM dbo.MyFunction1(p1)
UNION
SELECT * FROM dbo.MyFunction2(p2)
答案 1 :(得分:2)
在SQL Server中,您可以执行以下操作:
create table #temp (
col1 type,
col1 type,
...
)
insert into #temp
exec sproc1
go
insert into #temp
exec sproc2
go
select * from #temp
go
drop table #temp
但是,我的偏好是确定两个存储过程正在运行哪些查询,然后从头开始执行查询并执行相同的查询并将它们组合在一起。