如何合并一个table?

How to merge a table?

入站 table:

Date P_ID S_ID Measure1 Measure2
2022-02-12 01 03 100 NULL
2022-02-12 01 03 NULL 200
2022-02-13 01 02 300 NULL
2022-02-13 01 02 NULL 400

此 table 中还有一些度量字段。 在每一行中只有一个度量字段<> NULL。

我想transfer/merge把这个table改成另一个开头是空的:

出站table

Date P_ID S_ID Measure1 Measure2
2022-02-12 01 03 100 200
2022-02-13 01 02 300 400

我试过合并:

MERGE @OutboundTable AS TARGET
USING @InboundTable AS SOURCE
        ON  TARGET.[Date]   = SOURCE.[Date] 
        AND TARGET.[P_ID]   = SOURCE.[P_ID]
        AND TARGET.[S_ID]   = SOURCE.[S_ID]
WHEN MATCHED THEN UPDATE SET 
         TARGET.[Measure1] = ISNULL(SOURCE.[Measure1],TARGET.[Measure1]),
         TARGET.[Measure2] = ISNULL(SOURCE.[Measure2],TARGET.[Measure2])
    WHEN NOT MATCHED THEN
    INSERT
    (
          [Date]
        , [P_D]
        , [S_ID]
        , [Measure1]
        , [Measure2]
    )
    VALUES
    (
          SOURCE.[Date]
        , SOURCE.[P_ID]
        , SOURCE.[S_ID]
        , SOURCE.[Measure1]
        , SOURCE.[Measure2]
    )
    ;

但是没有用。出站 table 包含与入站 table.

相同的行

如何执行此转换?

查询:

INSERT INTO outbound (date, P_ID, S_ID, Measure1, Measure2)
SELECT date, P_ID, S_ID, MAX(Measure1) AS Measure1, MAX(Measure2) AS Measure2
  FROM inbound_table
  GROUP BY date, P_ID, S_ID;