Mengemas Kini Berbilang Baris dengan Cekap dalam PostgreSQL
PostgreSQL menawarkan kaedah yang berkuasa untuk mengemas kini berbilang baris secara serentak, mengelakkan pengehadan kenyataan kemas kini standard. Panduan ini menunjukkan pendekatan yang sangat berkesan.
Kaedah: Memanfaatkan UPDATE ... FROM
Klausa
Sintaks UPDATE ... FROM
menyediakan cara yang bersih dan cekap untuk mengemas kini berbilang baris berdasarkan data daripada sumber lain. Pendekatan "jadual pemetaan" ini memudahkan proses mengemas kini berbilang lajur sekaligus.
Sebagai contoh, untuk mengemas kini nilai column_a
berdasarkan nilai column_b
yang sepadan:
<code class="language-sql">UPDATE test AS t SET column_a = c.column_a FROM (VALUES ('123', 1), ('345', 2) ) AS c(column_b, column_a) WHERE c.column_b = t.column_b;</code>
Pertanyaan ini menggunakan klausa VALUES
untuk mencipta jadual pemetaan. Memperluas ini untuk mengemas kini berbilang lajur adalah mudah:
<code class="language-sql">UPDATE test AS t SET column_a = c.column_a, column_c = c.column_c FROM (VALUES ('123', 1, '---'), ('345', 2, '+++') ) AS c(column_b, column_a, column_c) WHERE c.column_b = t.column_b;</code>
Teknik ini menawarkan penyelesaian berskala dan fleksibel untuk mengemas kini berbilang baris dalam PostgreSQL dengan satu pertanyaan ringkas dan ringkas.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Kemas Kini Berbilang Baris dalam PostgreSQL dengan Pertanyaan Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!