Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

पिछले इंसर्ट के आधार पर रिकॉर्ड कैसे डालें?

इसे आजमाएं

इनपुट्स

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' 

क्वेरी

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

select * from @tblA
select * from @tblB

आउटपुट: [ टेबल ए और बी दोनों के लिए]

आईडी नाम

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

असल में मैं उन रिकॉर्ड्स को टेबलसी से टेबलए में डाल रहा हूं जिनकी आईडी भी हैं। और फिर आउटपुट क्लॉज का उपयोग करके TableA से TableB में मान सम्मिलित करते हुए

अधिक जानकारी के लिए OUTPUT क्लॉज

आशा है कि यह समझ में आता है



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 3 क्षेत्र जो SQL सर्वर प्रदर्शन निगरानी उपकरण का उपयोग करने से लाभान्वित होंगे

  2. SQL सर्वर 2017 चरण दर चरण स्थापना -1

  3. SQL कमांड INSERT काम कर रहा है लेकिन डेटा तालिका में दिखाई नहीं दे रहा है

  4. SQL सर्वर में "सर्वर डेटा एक्सेस के लिए कॉन्फ़िगर नहीं है" को कैसे ठीक करें

  5. SQL सर्वर में @@MAX_PRECISION क्या है?