MERGE je způsob, jak jít.
Existuje Bag:items=Item1, Item2
Existuje BagInDB:bag_id =1items=Item1,Item3
Musíme tedy aktualizovat Item1, přidat Item2 a odstranit Item3
1. krok (připojit se):
select * from bag full outer join (select * from bagInDB where bag_id = 1)
dá vám to
bag_itemName bagInDb_itemName
------------ ----------------
Item1 Item1
Item2 null
null Item3
2. krok (sloučení)
merge into baginDB b
using(query above) q on b.bag_id = 1 and b.itemName = q.bagInDb_itemName
when matched then
delete where q.bag_itemName is null
<rest of the conditions>