Jawaban:
INSERT INTO #TempTable (ID, Date, Name)
SELECT id, date, name
FROM physical_table
Untuk memasukkan semua data dari semua kolom, cukup gunakan ini:
SELECT * INTO #TempTable
FROM OriginalTable
Jangan lupa ke DROP
tabel sementara setelah selesai dan sebelum Anda mencoba membuatnya lagi:
DROP TABLE #TempTable
CREATE
yang#TempTable
SELECT ID , Date , Name into #temp from [TableName]
SELECT *
INTO #TempTable
FROM table
Saya telah menyediakan dua pendekatan untuk mengatasi masalah yang sama,
Solusi 1: Pendekatan ini mencakup 2 langkah, pertama buat tabel sementara dengan tipe data yang ditentukan, selanjutnya masukkan nilai dari tabel data yang ada.
CREATE TABLE #TempStudent(tempID int, tempName varchar(MAX) )
INSERT INTO #TempStudent(tempID, tempName) SELECT id, studName FROM students where id =1
SELECT * FROM #TempStudent
Solusi 2: Pendekatan ini sederhana, di mana Anda bisa langsung memasukkan nilai ke tabel sementara, di mana sistem secara otomatis mengurus pembuatan tabel temp dengan tipe data yang sama dengan tabel asli.
SELECT id, studName INTO #TempStudent FROM students where id =1
SELECT * FROM #TempStudent
Kueri yang tepat:
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
new_acc_no
, unit_id = '0007'
, group by
, having count(new_acc_no) > 1
, dll transformasi jawaban di duplikat yang tepat dari: stackoverflow.com/a/15762663/1476885
insert into #temptable (col1, col2, col3)
select col1, col2, col3 from othertable
Perhatikan bahwa ini dianggap praktik yang buruk:
insert into #temptable
select col1, col2, col3 from othertable
Jika definisi tabel temp berubah, kode bisa gagal saat runtime.
INSERT INTO #TempTable(ID, Date, Name)
SELECT OtherID, OtherDate, OtherName FROM PhysicalTable
Pengoperasian dasar tabel Sementara diberikan di bawah ini, modifikasi dan gunakan sesuai kebutuhan Anda,
- BUAT TEMPEL TEMP
CREATE TABLE #MyTempEmployeeTable(tempUserID varchar(MAX), tempUserName varchar(MAX) )
- Masukkan nilai ke dalam tabel TEMP
INSERT INTO #MyTempEmployeeTable(tempUserID,tempUserName) SELECT userid,username FROM users where userid =21
- QUERY A TEMP TABLE [Ini hanya akan bekerja di sesi / Instance yang sama, tidak pada instance sesi pengguna lain]
SELECT * FROM #MyTempEmployeeTable
- HAPUS NILAI DI TEMP TABLE
DELETE FROM #MyTempEmployeeTable
- DROP A TEMP TABEL
DROP TABLE #MyTempEmployeeTable