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

Sao chép bản ghi với chèn lựa chọn, sau đó cập nhật các thuộc tính trong cùng một tập hợp bản ghi

Nếu bạn chạy hai câu lệnh within a transaction , bất kỳ lỗi nào sẽ khiến cả bản chèn và bản cập nhật bị khôi phục.

insert into tgt..
select * from src
where <condition>
  and row_status <> 'copied'; --ignoring records after they have been copied once?

update src
set row_status = 'copied'
where <same_where_condition_as_before>

commit;

Nếu có các hàng mới được chèn vào bảng nguồn sau khi chúng được đọc, bạn có thể cần phải chạy lại khối, với điều kiện đã thay đổi nếu thích hợp.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. vấn đề với Add_month trong oracle, tôi cần tạo chu kỳ thanh toán

  2. ORACLE:KHÔNG CÓ CƠ SỞ DỮ LIỆU - nhưng dữ liệu tồn tại

  3. Oracle IN so với Tồn tại sự khác biệt?

  4. Làm thế nào để thay đổi giá trị âm thành dương trong Oracle?

  5. Muốn tạo số sê-ri