<i>I am not sure of the current status, but when MERGE was new in MS SQL it was unusable for UPSERT</i><p>I&#x27;ve used MERGE as an UPSERT using MATCHED&#x2F;NOT MATCHED and SERIALIZABLE&#x2F;HOLDLOCK since it was introduced in mssql 2008.  It was one of the first features I upgraded my code to use, and it worked out of the box with no issues.