¿Cuál es la diferencia entre usar
SELECT ... INTO MyTable FROM...
y
INSERT INTO MyTable (...)
SELECT ... FROM ....
?
Desde BOL [ INSERT , SELECT ... INTO ], sé que usar SELECT ... INTO creará la tabla de inserción en el grupo de archivos predeterminado si aún no existe, y que el registro de esta declaración depende de la recuperación modelo de la base de datos.
- ¿Qué afirmación es preferible?
- ¿Hay otras implicaciones de rendimiento?
- ¿Cuál es un buen caso de uso para SELECT ... INTO over INSERT INTO ...?
Editar: ya dije que sé que SELECCIONAR EN ... crea una tabla donde no existe. Lo que quiero saber es que SQL incluye esta declaración por una razón, ¿qué es? ¿Está haciendo algo diferente detrás de escena para insertar filas, o es simplemente azúcar sintáctica encima de un CREATE TABLE
y INSERT INTO
?
INSERT INTO
tiene dos palabras clave (select & into) desde elSELECT ... INTO
principio que le permiten al mundo saber que esta no es una declaración SQL ordinaria, mientras que , al menos, comienza a parecerse a una declaración SQL ordinaria. Una pequeña razón para favorecer a los primeros.