Merangkai Berbilang INSERT dengan RETURNING dalam PostgreSQL
Apabila bekerja dengan struktur pangkalan data hierarki, selalunya perlu memasukkan data ke dalam berbilang jadual dengan kebergantungan. Dalam PostgreSQL, gabungan CTE pengubah suai data dan klausa RETURNING menyediakan penyelesaian yang cekap.
Untuk memasukkan baris baharu ke dalam jadual induk table1 dan mengisi baris yang berkaitan dalam jadual anak table2 dan table3, ikut ini langkah:
WITH ins1 AS ( INSERT INTO table1 (username, name, surname) VALUES ('johnee','john','smith') RETURNING user_id ) , ins2 AS ( INSERT INTO table2 (user_id, password) SELECT ins1.user_id, 'secret' FROM ins1 ) INSERT INTO table3 (user_id, adress, city, phone) SELECT ins1.user_id, ... FROM ins1 RETURNING user_id;
Memecahkan CTE Rantaian:
Faedah Menggunakan CTE Pengubahsuaian Data:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Merangkai Berbilang Penyata INSERT dengan Cekap dengan RETURNING dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!