我如何从两个存储过程合并到一个数据表的结果

本文关键字:结果 合并 一个 数据表 两个 存储过程 | 更新日期: 2023-09-27 18:05:04

我有两个存储过程,我试图合并成一个数据表。一个有名为"Branches"的列,另一个返回名为"LocationID"的列。如何循环遍历两个存储过程结果并将它们插入到一个数据表中?

我如何从两个存储过程合并到一个数据表的结果

您可以使用语法INSERT myTable EXEC myStoredProc

将存储过程的结果存储在表中

一旦在表中有了两个结果集(无论是临时表还是其他表),就可以在JOIN中使用它们…

INSERT rs1 EXEC sp1
INSERT rs2 EXEC sp2
INSERT
  myTable
SELECT
  blah
FROM
  rs1
INNER JOIN
  rs2
    ON rs1.foo = rs2.bah

注意:

根据我的评论,结果集中的位置不足以决定两个结果集如何连接。您可以将表rs1和rs2定义为具有IDENTITY列,并在StoredProcedures中使用ORDER BY来确保它们始终以相同的顺序插入,从而始终获得正确的IDENTITY值。