MERGE (SQL)
Upsert ve silme işlemini tek komutta yapan SQL standardı komutu: MERGE INTO target USING source ON ... WHEN MATCHED THEN UPDATE ... WHEN NOT MATCHED THEN INSERT. SQL:2003'ten beri standarttır; PostgreSQL 15+ (2022), Oracle, SQL Server ve MySQL 8+ destekler.
Kullanım alanı: büyük bir veri kümesini dış kaynaktan eşitlemek (CSV içe aktarma, çoğaltma toplu işi). Ayrı ayrı INSERT + UPDATE + DELETE döngüsü yerine tek bir ifade yeterlidir. WHEN NOT MATCHED BY SOURCE, hedefte olup kaynakta olmayan satırları ele alır (silmek ya da eski olarak işaretlemek için). PostgreSQL'in INSERT ... ON CONFLICT komutuyla karşılaştırma: MERGE daha esnektir (silmeyi de destekler), ON CONFLICT ise saf upsert için daha basittir. Başarım: MERGE toplu işlemler için optimize edilmiştir ve paralellikten yararlanabilir. Klasik kullanım: veri ambarı ETL'i.