Ich habe eine Anwendung, die ich in Zugriff mit einem SQL Server-Backend schreibe. Einer der am meisten verwendeten Teile ist, wo der Benutzer eine Antwort auf eine Frage auswählt, eine gespeicherte Prozedur wird dann ausgelöst, die sieht, ob eine Antwort bereits gegeben wurde, ob ein UPDATE ausgeführt wird, wenn kein INSERT ausgeführt wird.MERGE vs. UPSERT
Das funktioniert gut, aber jetzt haben wir auf SQL Server 2008 Express aktualisiert. Ich frage mich, ob es besser/schneller/effizienter wäre, diesen SP neu zu schreiben, um den neuen MERGE-Befehl zu verwenden.
Hat jemand eine Idee, wenn dies schneller ist als ein SELECT gefolgt von einem INSERT oder UPDATE?
Es ist ein fairer Punkt und während ich nicht an der Spitze tue, um es zu tun, denke ich, wenn es erhöhte Leistung bietet, wie Sie sagten, dann könnte es in einer Episode von "Micro Optimization Theater" Feature, wenn ich etwas schlaffe Zeit bekommen im Projekt und muss beschäftigt aussehen –
"MERGE zielt speziell auf Data Warehouses" - klingt für mich wie Unsinn. – onedaywhen