Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Salin catatan dengan pilih sisipkan, lalu perbarui atribut dalam kumpulan catatan yang sama

Jika Anda menjalankan dua pernyataan within a transaction , kegagalan apa pun akan menyebabkan penyisipan dan pembaruan dibatalkan.

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;

Jika ada baris baru yang disisipkan dalam tabel sumber setelah dibaca, Anda mungkin perlu menjalankan blok lagi, dengan kondisi tempat yang diubah jika sesuai.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mendapatkan konten tekstual dari BLOB di Oracle SQL

  2. Cara Menghapus "X Rows Selected" di SQLcl &SQL*Plus (Oracle)

  3. Cadangan Skema SQL Saja?

  4. Cara menggunakan join di tiga tabel

  5. SQL - Kembalikan baris dengan kecocokan kolom terbanyak