sql - registros - Insertar datos en tabla de temperatura con consulta
insertar registros de una base de datos a otra en sql server (8)
Tengo una consulta existente que muestra los datos actuales, y me gustaría insertarla en una tabla Temp, pero tengo algunos problemas para hacerlo. ¿Alguien tiene alguna idea sobre cómo hacer esto?
Aquí hay un ejemplo
SELECT *
FROM (SELECT Received,
Total,
Answer,
( CASE
WHEN application LIKE ''%STUFF%'' THEN ''MORESTUFF''
END ) AS application
FROM FirstTable
WHERE Recieved = 1
AND application = ''MORESTUFF''
GROUP BY CASE
WHEN application LIKE ''%STUFF%'' THEN ''MORESTUFF''
END) data
WHERE application LIKE isNull(''%MORESTUFF%'', ''%'')
Esto parece dar salida a mis datos actualmente de la manera en que lo necesito, pero me gustaría pasarlos a una tabla temporal. Mi problema es que soy bastante nuevo para las Consultas SQL y no he podido encontrar la manera de hacerlo. O si es posible. Si no es posible, ¿hay una mejor manera de obtener los datos que estoy buscando WHERE application LIKE isNull(''%MORESTUFF%'',''%'')
en una tabla temporal?
¡Cualquier ayuda sería muy apreciada! ¡Gracias!
Esto es posible. Pruebe de esta manera:
Create Global Temporary Table
BossaDoSamba
On Commit Preserve Rows
As
select ArtistName, sum(Songs) As NumberOfSongs
from Spotfy
where ArtistName = ''BossaDoSamba''
group by ArtistName;
La forma más rápida de hacerlo es utilizando el comando "SELECT INTO", por ejemplo
SELECT * INTO #TempTableName
FROM....
Esto creará una nueva tabla, no es necesario que la cree de antemano.
Personalmente, necesitaba un poco de mano para averiguar cómo usar esto y es realmente asombroso.
SELECT *
INTO #TEMP
FROM (
The query you want to use many times
) AS X
SELECT * FROM #TEMP WHERE THIS = THAT
SELECT * FROM #TEMP WHERE THIS <> THAT
SELECT COL1,COL3 FROM #TEMP WHERE THIS > THAT
DROP TABLE #TEMP
Prueba esto:
SELECT *
INTO #Temp
FROM
(select * from tblorders where busidate =''2016-11-24'' and locationID=12
) as X
Utilice un alias con x para que no falle el script y el resultado.
Puedes hacer eso así:
INSERT INTO myTable (colum1, column2)
SELECT column1, column2 FROM OtherTable;
Solo asegúrese de que las columnas coincidan, tanto en número como en tipo de datos.
SQL Server R2 2008 necesita la cláusula AS
siguiente manera:
SELECT *
INTO #temp
FROM (
SELECT col1, col2
FROM table1
) AS x
La consulta falló sin el AS x
al final.
También es necesario cuando se usa SS2016, tuvo que agregarse as t
hasta el final.
Select * into #result from (SELECT * FROM #temp where [id] = @id) as t //<-- as t
SELECT *
INTO #Temp
FROM
(SELECT
Received,
Total,
Answer,
(CASE WHEN application LIKE ''%STUFF%'' THEN ''MORESTUFF'' END) AS application
FROM
FirstTable
WHERE
Recieved = 1 AND
application = ''MORESTUFF''
GROUP BY
CASE WHEN application LIKE ''%STUFF%'' THEN ''MORESTUFF'' END) data
WHERE
application LIKE
isNull(
''%MORESTUFF%'',
''%'')
SELECT * INTO #TempTable
FROM SampleTable
WHERE...
SELECT * FROM #TempTable
DROP TABLE #TempTable