在資料庫中, 有些分析用的資料, 又或是主副庫存資料, 常常會有個[存在資料就更新, 而不存在就新增(或插入)]的需求. 這個在 SQL Server 2008 中有個新增的指令可以做到, 就是 Merge 這個指令.
他的用法很單純, 也非常直覺, 有點像是程式的指令語法, 範例如下:
代碼: 選擇全部
MERGE InventoryMaster AS im
USING (SELECT InventoryID, Descr FROM NewInventory) AS src
ON im. InventoryID = src. InventoryID
WHEN MATCHED THEN
UPDATE SET im.Descr = src.Descr
WHEN NOT MATCHED THEN
INSERT (InventoryID, Descr) VALUES (src. InventoryID, src.Descr);