Mengendalikan Berbilang Baris dengan Cekap dengan MySQL ON DUPLICATE KEY UPDATE
MySQL menawarkan pendekatan yang diperkemas untuk mengurus sisipan berbilang baris sambil menyemak dan mengemas kini nilai unik sedia ada pada masa yang sama. Ini dicapai menggunakan klausa ON DUPLICATE KEY UPDATE
. Ciri ini membenarkan kemas kini bersyarat atau sisipan medan tertentu dalam satu pertanyaan.
Untuk mengemas kini baris sedia ada dan menambah baris baharu secara terpilih, manfaatkan alias atau kata kunci VALUES
bersama dengan ON DUPLICATE KEY UPDATE
.
MySQL 8.0.19 dan lebih baru (Menggunakan Alias):
<code class="language-sql">INSERT INTO beautiful (name, age) VALUES ('Helen', 24), ('Katrina', 21), ('Samia', 22), ('Hui Ling', 25), ('Yumie', 29) AS new ON DUPLICATE KEY UPDATE age = new.age</code>
MySQL 8.0.19 dan lebih awal (Menggunakan Kata Kunci NILAI):
<code class="language-sql">INSERT INTO beautiful (name, age) VALUES ('Helen', 24), ('Katrina', 21), ('Samia', 22), ('Hui Ling', 25), ('Yumie', 29) ON DUPLICATE KEY UPDATE age = VALUES(age)</code>
Contoh ini menunjukkan cara mengemas kini atau memasukkan data berdasarkan kunci unik sedia ada. Jika kunci unik sudah wujud, medan yang ditentukan dikemas kini; jika tidak, baris baharu dimasukkan. Kata kunci VALUES
atau alias new
merujuk kepada nilai yang disisipkan dalam pernyataan INSERT
.
Atas ialah kandungan terperinci Bagaimana Menggunakan MySQL ON DUPLICATE KEY UPDATE untuk Berbilang Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!