>
>3. Instead of IF EXISTS INSERT I suggest to use MERGE command. It should be much better.
>
After having worked with it for years, I steer people away from MERGE in OLTP systems. It was really designed for, and is better suited for, ETL loads in data mart/data warehouse scenarios.
But your original point is valid - it's best to optimize the IF EXISTS check.