INTO (cláusula de Transact-SQL)
Actualizado: 15 de septiembre de 2007
Crea una nueva tabla e inserta en ella las filas resultantes de la consulta.
Convenciones de sintaxis de Transact-SQL
Sintaxis
[ INTO new_table ]
Argumentos
new_table
Especifica el nombre de una nueva tabla que se va a crear basada en las columnas de la lista de selección y en las filas seleccionadas por la cláusula WHERE. El formato de new_table se determina mediante la evaluación de las expresiones de la lista de selección. Las columnas de new_table se crean en el orden que especifica la lista de selección. Cada columna de new_table tiene el mismo nombre, tipo de datos y valor que la expresión correspondiente de la lista de selección.Cuando se incluye una columna calculada en la lista de selección, la columna correspondiente de la nueva tabla no es una columna calculada. Los valores de la nueva columna son los que se calcularon en el momento en que se ejecutó SELECT...INTO.
La cantidad de registro para algunas operaciones masivas, incluida SELECT...INTO, depende del modelo de recuperación activado para la base de datos. Para obtener más información, vea Información general de los modelos de recuperación.
[!NOTA] En versiones anteriores a SQL Server 2000, la creación de una tabla permanente con SELECT INTO sólo estaba permitida si estaba establecida la opción select into/bulkcopy. En SQL Server 2000 y en versiones posteriores, la opción de base de datos select into/bulkcopy ya no afecta a la posibilidad de crear una tabla permanente mediante SELECT INTO.
Notas
El usuario que ejecuta una instrucción SELECT con la cláusula INTO debe tener el permiso CREATE TABLE en la base de datos de destino.
No se puede utilizar SELECT INTO para crear una tabla con particiones incluso si la tabla de origen tiene particiones. SELECT INTO no utiliza el esquema de partición de la tabla de origen. En su lugar, se crea la nueva tabla en el grupo de archivos predeterminado. Para insertar las filas en una tabla con particiones, debe crear primero la tabla con particiones y, a continuación, utilizar la instrucción INSERT INTO...SELECT FROM.
No se puede utilizar SELECT...INTO con COMPUTE.
Ejemplos
En el ejemplo siguiente se crea la tabla dbo.EmployeeAddresses
mediante la selección de siete columnas de varias tablas relacionadas con empleados y direcciones.
USE AdventureWorks;
GO
SELECT c.FirstName, c.LastName, e.Title, a.AddressLine1, a.City, sp.Name AS [State/Province], a.PostalCode
INTO dbo.EmployeeAddresses
FROM Person.Contact AS c
JOIN HumanResources.Employee AS e ON e.ContactID = c.ContactID
JOIN HumanResources.EmployeeAddress AS ea ON ea.EmployeeID = e.EmployeeID
JOIN Person.Address AS a on a.AddressID = ea.AddressID
JOIN Person.StateProvince as sp ON sp.StateProvinceID = a.StateProvinceID;
GO
Vea también
Referencia
SELECT (Transact-SQL)
Ejemplos de SELECT (Transact-SQL)
Otros recursos
Insertar filas mediante SELECT INTO
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
15 de septiembre de 2007 |
|