有许多问题与在MS SqlServer中共享另一个存储过程的数据结果有关。
根据SQL Server的版本,人们会建议使用临时表,xml(SQLServer 2005)或表变量(SQL Server 2008)。
Erland Sommarskog撰写了一篇很棒的文章,它提供了全面的答案,并列出了不同版本的SQL中可用的所有选项:
我认为值得分享。
我在reading an answer by deevus建议使用INSERT-EXEC Statement之前发现了那篇文章,这是我之前并不熟悉的事情
答案 0 :(得分:9)
Erland Sommarskog撰写了一篇很棒的文章,它提供了全面的答案,并列出了不同版本的SQL中可用的所有选项:
本文解决了两个相关问题 问题:
- 如何使用一个结果集 存储过程也在另一个 表达为如何使用结果 从一个存储过程设置 SELECT语句?
- 我怎样才能通过 table作为一个存储的参数 程序到另一个?
在这篇文章中 我将讨论一些方法, 并指出他们的优势 和缺点。一些方法 仅在您要重复使用时才适用 结果集,而其他人适用 两种情况。在你想要的情况下 重用结果集,大多数方法 要求你重写存储的 这种或那种方式,但是 有一些方法没有。