My Code:--
CREATE OR REPLACE TEMPORARY VIEW preprocessed_source AS
SELECT
Key_ID,
Distributor_ID,
Customer_ID,
Customer_Name,
Channel
FROM integr_masterdata.Customer_Master;
-- Step 2: Perform the merge operation using the preprocessed source table
MERGE INTO slvr_masterdata.Customer_Master as Target
USING preprocessed_source AS Source
ON
Source.Key_ID = Target.Key_ID
WHEN MATCHED THEN
UPDATE SET
Target.Distributor_ID = Source.Distributor_ID,
Target.Customer_ID = Source.Customer_ID,
Target.Customer_Name = Source.Customer_Name,
Target.Channel = Source.Channel,
Target.Time_Stamp = current_timestamp()
WHEN NOT MATCHED
THEN INSERT
(
Distributor_ID,
Customer_ID,
Customer_Name,
Channel,
Time_Stamp
)
VALUES (
Source.Distributor_ID,
Source.Customer_ID,
Source.Customer_Name,
Source.Channel,
current_timestamp()
)