sql – 如何组合来自两个存储过程调用的结果集?
发布时间:2021-05-23 05:04:32 所属栏目:MsSql教程 来源:网络整理
导读:我有一个以下存储过程 CREATE PROCEDURE [dbo].[MyStored] @state intAS SELECT blahblahblah WHERE StoredState=@state LotsOfJoinsFollow;RETURN 0 我想调用@state为0和1的存储过程,并将两个调用返回的结果集与UNION语义结合起来,这样我就有了一个新的结果
|
我有一个以下存储过程 CREATE PROCEDURE [dbo].[MyStored] @state int AS SELECT blahblahblah WHERE StoredState=@state LotsOfJoinsFollow; RETURN 0 我想调用@state为0和1的存储过程,并将两个调用返回的结果集与UNION语义结合起来,这样我就有了一个新的结果集,它包含第一次调用和第二次调用的行. 像(假想的SQL): (EXEC MyStored 0) UNION (EXEC MyStored 1); 我如何实现这一目标? 解决方法这可能会过度简化问题,但如果您可以控制sp,只需使用in而不是=:CREATE PROCEDURE [dbo].[MyStored] AS SELECT blahblahblah WHERE StoredState IN (0,1) LotsOfJoinsFollow; RETURN 0 如果这不是一个选项,只需将两个sproc调用的结果推送到临时表: /*Create a table with the same columns that the sproc returns*/ CREATE TABLE #tempblahblah(blahblahblah NVARCHAR(50)) INSERT #tempblahblah ( blahblahblah ) EXEC MyStored 0 INSERT #tempblahblah ( blahblahblah ) EXEC MyStored 1 SELECT * FROM #tempblahblah (编辑:天瑞地安资讯网_保定站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何选择和排序不在Groupy中的列按SQL语句 – Oracle
- sql-server-2008 – 链接服务器“(null)”的OLE DB提供程序
- sql-server – 如何防止在列上创建统计信息?
- 浅谈sql数据库常用语句,你知道多少?
- sql语句如何去重复记录?教你两个办法
- sql-server-2012 – 如何卸载SQL Server Management Studio
- sql-server – 如何获取SQL Server表中每行的实际数据大小?
- sql – 将两个表合并为一个新表,以便忽略另一个表中的选择行
- Sql事务怎么理解?一文迅速了解Sql事务的用法
- 数据库 – 关于MSSQL Server的高可用性
站长推荐
热点阅读

