您可以使用OPENQUERY操作sp调用返回的值,并将每个sp的结果分别插入到同一个表中,例如。。。
CREATE TABLE #temptbl(metricid int, value float, normalizedvalue int);
INSERT INTO #temptbl(metricid , value , normalizedvalue )
SELECT 1
, value
, CASE
WHEN value < 5
THEN 100
WHEN value >= 5 AND value < 10
THEN 50
ELSE 0
END
FROM OPENQUERY(YOURSERVERNAME, 'EXEC SP_CalcMetric1')
UNION ALL
SELECT 2
, value
, CASE --<-- Some other logic here as you mentioned it could be different
WHEN value < 5
THEN 100
WHEN value >= 5 AND value < 10
THEN 50
ELSE 0
END
FROM OPENQUERY(YOURSERVERNAME, 'EXEC SP_CalcMetric2')
.
.
. add more union all if you need to.