El problema
Me he encontrado varias veces en las que necesito modificar o insertar registros en una tabla. Los registros que me vienen dados, pueden no ser correlativos. Seguramente existe una manera en la que hacer una sentencia SQLSERVER que elimine, modifique o inserte el resultado de la sentencia principal, pero ante el riesgo que conlleva, y las urgencias y prisas con las que tengo que actuar, me ha resultado más lógico y racional usar un fichero Excel, y juntar los trozos de texto con la función CONCAT y así hacer sentencias (sencillas o complejas) que necesitaría invertir más tiempo para hacerlas directamente con una sentencia en SQLSERVER. Ante los problemas… soluciones. Es lo que importa.
Los pasos, para no perderme
Paso 1. Volcar los resultados en un CSV usando la opción Guardar resultados como…
Paso 2. Elegir el nombre del fichero
Paso 3. Abrir el Excel y en la pestaña Datos, pulsar en la opción De texto/CSV
Paso 4. Elegimos el fichero CSV que hemos grabado previamente y pulsamos en cargar
Paso 5. Esto importará todas las filas del fichero CSV en el excel.
Paso 6. A continuación, añadimos una nueva columna a la tabla que se llamará Sentencia. Introducimos en la celda la funciona CONCAT y montamos la sentencia con la instrucción SQL que vayamos a utilizar (INSERT/UPDATE/DELETE)
Paso 7. Copiamos toda la columna titulada como Sentencia en el SQL y ejecutamos
Paso 8. En el resultado de la sentencia SQL vemos que se ha realizado la sentencia SQL indicada.
Este es el Excel que uso
Puedes conseguir una versión del Excel que uso en este enlace. También puedes comprar una buena guía con otros trucos y consejos