variable - temporary table sql server




Inserimento di dati in una tabella temporanea (8)

Dopo aver creato una tabella temporanea e dichiarando i tipi di dati in questo modo;

 CREATE TABLE #TempTable(
 ID int,
 Date datetime,
 Name char(20))

Come inserisco quindi i dati rilevanti che sono già contenuti in una tabella fisica all'interno del database?


Dopo aver creato la tabella temporanea, devi semplicemente eseguire una normale INSERT INTO () SELECT FROM

INSERT INTO #TempTable (id, Date, Name)
SELECT t.id, t.Date, t.Name
FROM yourTable t

Ho fornito due approcci per risolvere lo stesso problema,

Soluzione 1: questo approccio include 2 passaggi, innanzitutto creare una tabella temporanea con tipo di dati specificato, quindi inserire il valore dalla tabella di dati esistente.

CREATE TABLE #TempStudent(tempID  int, tempName  varchar(MAX) )
INSERT INTO #TempStudent(tempID, tempName) SELECT id, studName FROM students where id =1

SELECT * FROM #TempStudent

Soluzione 2: questo approccio è semplice, in cui è possibile inserire direttamente i valori nella tabella temporanea, in cui automaticamente il sistema si occupa della creazione della tabella temporanea con lo stesso tipo di dati della tabella originale.

SELECT id, studName  INTO #TempStudent FROM students where id =1

SELECT * FROM #TempStudent

La domanda giusta:

drop table #tmp_table

select new_acc_no, count(new_acc_no) as count1
into #tmp_table
from table
where unit_id = '0007' 
group by unit_id, new_acc_no
having count(new_acc_no) > 1

Le operazioni di base della tabella temporanea sono indicate di seguito, modificate e utilizzate secondo le vostre esigenze,

- CREA UNA TABELLA TEMP

CREATE TABLE #MyTempEmployeeTable(tempUserID  varchar(MAX), tempUserName  varchar(MAX) )

- INSERISCI VALORE IN UNA TABELLA TEMP

INSERT INTO #MyTempEmployeeTable(tempUserID,tempUserName) SELECT userid,username FROM users where userid =21

- QUERY A TEMP TABLE [Funzionerà solo nella stessa sessione / istanza, non in un'altra istanza di sessione utente]

SELECT * FROM #MyTempEmployeeTable

- CANCELLA VALORE NELLA TABELLA TEMP

DELETE FROM #MyTempEmployeeTable

- DROP A TEMP TABLE

DROP TABLE #MyTempEmployeeTable

INSERT INTO #TempTable (ID, Date, Name) 
SELECT id, date, name 
FROM physical_table

INSERT INTO #TempTable(ID, Date, Name)
SELECT OtherID, OtherDate, OtherName FROM PhysicalTable

SELECT * 
INTO #TempTable
FROM table

insert #temptable
select idfield, datefield, namefield from yourrealtable




temp-tables