Sepertinya Anda salah jalan. Skema asli Anda yang dinormalisasi biasanya lebih unggul. Jika Anda perlu menampilkan toko / pengguna, buat VIEW
.
Tapi Anda mungkin punya alasan sendiri, jadi begini:
UPDATE purchases p
SET (shop, shop_user) = (s.name, s."user")
FROM shop s
WHERE s.id = p.shop_id;
Jangan gunakan kata khusus "user"
sebagai pengenal.
Dan "nama" hampir tidak pernah merupakan nama good yang baik , baik.
Dan varchar(255)
di Postgres biasanya menunjukkan kesalahpahaman.
Tentang varchar(255)
:
varchar(255)
- Haruskah saya menambahkan batas panjang sewenang-wenang ke kolom VARCHAR?
- Apakah ada kerugian menggunakan tipe data "teks" untuk menyimpan string?
- Detail selengkapnya ada di manual.