我有三张桌子:
- 源表
- 消耗臭氧层物质表
- 暂存表
我的合并语句使用源表将数据插入 ODS 和输出到暂存表。插入后,源表和ODS的计数是一样的,但是staging count比两者都少。输出子句应该将 ODS 中插入的内容的副本插入到 Staging 中,但事实并非如此。有人知道为什么会这样吗?我的合并语句如下:-
BEGIN TRANSACTION
BEGIN TRY
/* truncate staging table */
TRUNCATE TABLE stage table
/* merge into ODS based on NK */
MERGE INTO ODS table as TRG
USING source table as SRC
/* ON Natural Key for that table/data type */
ON TRG.column = SRC.column
/* insert new records into ODS */
WHEN NOT MATCHED AND SRC.column = @LOB THEN
INSERT (columns )
VALUES ( columns )
OUTPUT INSERTED.* INTO STG. table
COMMIT TRANSACTION
谢谢!