Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm thế nào để Chèn Bản ghi dựa trên Phụ trang Trước đó?

Hãy thử điều này

Đầu vào

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' 

Truy vấn

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

select * from @tblA
select * from @tblB

Đầu ra: [Đối với cả bảng A và B]

tên id

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

Về cơ bản, tôi đang chèn các bản ghi đó vào TableA từ TableC có id là số chẵn. Và sau đó bằng cách sử dụng mệnh đề Đầu ra, chèn các giá trị từ TableA đến TableB

Để biết thêm thông tin, hãy Điều khoản OUTPUT

Hy vọng điều này có ý nghĩa



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thêm một cột nếu nó không tồn tại cho tất cả các bảng?

  2. Thay đổi cột, thêm ràng buộc mặc định

  3. Sử dụng COL_LENGTH () để lấy độ dài của cột trong SQL Server

  4. SQL Server không giải phóng bộ nhớ sau khi thực thi truy vấn

  5. Bản phát hành mới:Gói điều chỉnh Spotlight 7.1.9