Pregunta

Tengo una aplicación que estoy escribiendo en el acceso con un back-end servidor SQL. Una de las partes más utilizadas es donde los usuarios selecciona una respuesta a una pregunta, un procedimiento almacenado se disparó luego que ve si una respuesta ya se ha dado, si tiene un UPDATE se ejecuta, si se ejecuta sin un inserto.

Esto funciona muy bien, pero ahora hemos actualizado a SQL Server 2008 Express Me preguntaba si sería mejor / más rápido / más eficiente para volver a escribir este SP para utilizar el nuevo comando MERGE.

¿Alguien tiene alguna idea de si esto es más rápido que hacer un SELECT seguido de un INSERT o UPDATE?

¿Fue útil?

Solución

No vale la pena el esfuerzo. Posiblemente factible, pero no le dará nada notable.

Merge es especialmente dirigidas a los almacenes de datos donde encontrar lo que para insertar / actualización es la parte difícil. Permite todas las operaciones (INSERT, UPDATE) para ser realizadas con un conjunto de fusiones, en comparación con una para cada condición. Esto no hace ninguna diferencia real en su caso.

Tengo una base de datos donde hoy subo 3-5 millones de filas en una tabla de 300 millones de fila - no se funden improoves mi rendimiento en un 50% (un recorrido de tabla en lugar de dos)

.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top