Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bagaimana Menyisipkan Catatan berdasarkan Sisipan Sebelumnya?

Coba ini

Masukan

declare @tblA table (id int,name varchar(20))
declare @tblB table (id int,name varchar(20))
declare @tblC table (id int identity,name varchar(20))
insert into @tblC 
    select 'name1' union all select 'name2' union all
    select 'name3' union all select 'name4' union all
    select 'name5' union all select 'name6' union all
    select 'name7' union all select 'name8' union all
    select 'name9' union all select 'name10' union all
    select 'name11' union all select 'name12' union all
    select 'name13' union all select 'name14' union all
    select 'name15' union all select 'name16' union all
    select 'name17' union all select 'name18' union all
    select 'name19' union all select 'name20' 

Kueri

insert @tblA 
output INSERTED.id, INSERTED.Name
into @tblB 
select 
    id,name
from @tblC 
where id % 2 = 0

select * from @tblA
select * from @tblB

Keluaran: [ Untuk kedua tabel A &B]

nama id

2   name2
4   name4
6   name6
8   name8
10  name10
12  name12
14  name14
16  name16
18  name18
20  name20

Pada dasarnya saya memasukkan catatan-catatan itu ke TableA dari TableC yang id-nya genap. Dan kemudian dengan menggunakan klausa Output memasukkan nilai dari TableA ke TableB

Untuk informasi lebih lanjut Klausul OUTPUT

Semoga ini masuk akal



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ganti beberapa karakter dari string tanpa menggunakan fungsi ganti bersarang

  2. SQL Server - Putar nilai TIME ke menit berikutnya

  3. Memilih dan Mengonfigurasi Perangkat Keras untuk SQL Server 2016 Edisi Standar

  4. Bagaimana menghitung rata-rata bergerak selama n jam terakhir

  5. Sql server 2008 - fitur penyetelan kinerja untuk memasukkan data dalam jumlah besar