SQL - Crear tabla a partir de un select

 
Vista:

Crear tabla a partir de un select

Publicado por Mamila (13 intervenciones) el 03/01/2007 19:12:45
Hola,

Quisiera saber como puedo crear una tabla temporal a partir de un select.

Por ejemplo, tengo tabla_1, tabla_2 y deseo que el resultado se vaya a una tabla temporal llamada tabla_tmp.

Lo estoy haciendo asi pero me da error:

CREATE TABLE Tabla_TMP
SELECT T1.Codigo, T1.Nombre, T2.Carrera, T2.Duracion
FROM Tabla_1 T1, Tabla_2 T2
WHERE T1.Codigo = T2.Codigo and T1.Flag_1=1

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Crear tabla a partir de un select

Publicado por luishoracio (15 intervenciones) el 03/01/2007 20:26:09
Buenas tardes,

Prueba así:

SELECT T1.Codigo, T1.Nombre, T2.Carrera, T2.Duracion into Tabla_TMP
FROM Tabla_1 T1, Tabla_2 T2
WHERE T1.Codigo = T2.Codigo and T1.Flag_1=1

si alguna duda mándame un correo a [email protected] o por msn que con gusto te ayudaré

Hasta pronto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Crear tabla a partir de un select

Publicado por mamila (13 intervenciones) el 03/01/2007 20:38:56
Muchas gracias luishoracio, funciono a la perfeccion.

Solo me gustaria saber como hacer para que no me de error si la tabla temporal ya existe.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Crear tabla a partir de un select

Publicado por Isaías (5072 intervenciones) el 03/01/2007 20:49:08
Con el permiso de luishoracio

if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tabla_tmp]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
begin
---- tu codigo de creacion de tabla
end
else
begin
select 'Error, la tabla ya existe'
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Crear tabla a partir de un select

Publicado por luishoracio (15 intervenciones) el 04/01/2007 19:10:26
Buenas tardes,

Esa que te mando isaias es buena pero tambien hay otra:

declare @tabla varchar(10)

set @tabla=(select name from sysobjects where name='tabla_tmp')

if @tabla<>' ' begin
print 'Error, la tabla ya existe'
end
else begin
crea la tabla aca
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Crear tabla a partir de un select

Publicado por Isaías (5072 intervenciones) el 04/01/2007 20:21:29
luishoracio

Solo una observacion, como estamos hablando de un nombre de tabla, tu variable @tabla en lugar de ser un VARCHAR(10) deberia ser SYSNAME.

Esto, porque no sabemos que tan grande seria el nombre de la tabla.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar