haitao:
MSSQL,如何做到:在存储过程里,先执行一个系统存储过程,并把它返回的一个或多个记录集再作处理
[阅读: 964] 2004-08-24 15:32:11
MSSQL,如何做到:
在存储过程里,先执行一个系统存储过程,并把它返回的一个或多个记录集再作处理
即SQL如何将存储过程返回的记录集接受过来继续使用?
例如已经有一个系统或别人的存储过程会返回一个记录集
但是希望SQL语句能对它作进一步处理(如再过滤或排序)再返回
即希望有类似这样的语法
select top 20 f1,f5,f12 from (exec sp_xxxx) a
where f5 in (1,2,3)
order by f5,f1,f12
另:如何把变量传给exec的sql字符串中?
记得以前deep blue介绍过,是可以的,当时还觉得很绝:居然真的可以这样!
现在忘了。
意思就是允许:
declare @tb varchar(100) , @c int
set @tb='tb001'
exec ('select @c=count(*) from '+@tb)
print @c