我想運行一個T-SQL腳本,在其中創建一個將由另一個表的某個字段聚合的臨時表,將其稱爲表X.此臨時表的其餘字段將通過在表X的字段上執行集合函數來填充。然後,我想在填充臨時表之後,在另一個表(稱爲表Y)上執行MERGE/WHEN MATCHED與我的臨時表。TSQL聚合函數來填充臨時表
如何創建此臨時表並使用聚合函數填充它? (我已經編寫了MERGE問題的一部分)。
我想運行一個T-SQL腳本,在其中創建一個將由另一個表的某個字段聚合的臨時表,將其稱爲表X.此臨時表的其餘字段將通過在表X的字段上執行集合函數來填充。然後,我想在填充臨時表之後,在另一個表(稱爲表Y)上執行MERGE/WHEN MATCHED與我的臨時表。TSQL聚合函數來填充臨時表
如何創建此臨時表並使用聚合函數填充它? (我已經編寫了MERGE問題的一部分)。
創建一個臨時表,您將可以執行以下操作:
create table #temp
(
id int,
col1 int
)
那麼你會寫一個INSERT INTO
INSERT INTO #temp
SELECT col1, sum(col2)
FROM yourTable
一旦你創建臨時表,你可以在您的商店使用程序。
什麼bluefeet發佈,或:
with rsAggregated as
(
select id, sum(x)
from tableX
group by id
)
merge...
或者說,沒有看到你的MERGE語句,只是
merge tableY using
(
select id, sum(x)
from tableX
group by id
) rsAggregated
on rsAggregated.id = tableY.id
when matched
...
when not matched
...
你可以做整個事情有一個SELECT語句
SELECT col1 AS ID, sum(col2) AS col1 INTO #temp FROM yourTable