我目前有两个 SQL 命令。
一个从表中检索唯一 ID 的列表。
另一个迭代这些 ID 调用相同的存储过程,此时它只是一个插入语句。
因此,举个例子(使用假名),目前我正在打电话:
SELECT DISTINCT ID FROM TableOfIDs;
并将返回值存储在 List 中,然后调用以下存储过程。
INSERT INTO Table ([Date], [Number], [ID]) VALUES( @CurrDate,
(SELECT SUM(Number2)
FROM Table2
WHERE RowID = @ID
AND CurrDate = (SELECT MAX(CurrDate)
FROM Table2
WHERE RowID = @ID))
,@ID)
所以一个简化的表格看起来像这样:
Table
Date | Number | ID (FK)
Table2
CurrDate | RowID(FK) | Number2
这两个 ID 都是 TableOfIDs 表的外键。
我怎样才能做到这一点,以便所有这些都在一个查询或一个存储过程中运行,而不是在一个查询中检索所有 ID,并在它们上迭代,每晚调用约 400 个存储过程?:)
非常感谢; 如果需要更多详细信息,请询问,我将填补空白。
它们都是同一张表的外键。