Saya perlu memperbarui tabel dari yang lain, dan saya perlu memperbarui semua kolom. Selain mencantumkan setiap kolom dalam SETklausa, apakah ada cara untuk memperbarui semuanya sekaligus? Seperti ini:
update tableA
set * = tableB.*
from tableB where tableA.id = tableB.id
Saya mencoba psql, tidak berhasil. Saya harus mendaftar setiap kolom seperti ini:
update tableA
set c1 = tableB.c1, c2 = tableB.c2, ...
from tableB where tableA.id = tableB.id
tableBdibuat digunakan create .. like tableA. Jadi mereka pada dasarnya identik. Dan alasan saya melakukannya adalah karena saya perlu memuat data .csv ke tabel temp tableBdan kemudian memperbarui tableAberdasarkan data baru di tableB. tableAperlu dikunci sesedikit mungkin dan tableAperlu menjaga integritas. Saya tidak yakin 'hapus lalu masukkan' akan menjadi opsi yang baik?