Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mempercepatkan Kemas Kini MySQL Menggunakan Subqueries Bersarang?
Kemas Kini Lebih Pantas dengan Subkueri Bersarang
Matlamat anda untuk mengemas kini satu nilai jadual MySQL berdasarkan yang lain menimbulkan cabaran prestasi. Pertanyaan yang anda gunakan, walaupun berfungsi, boleh menjadi sangat perlahan, terutamanya dengan set data yang besar.
Nasib baik, terdapat pendekatan yang lebih cekap tersedia. Pertimbangkan penyelesaian berikut:
UPDATE tobeupdated INNER JOIN original ON (tobeupdated.value = original.value) SET tobeupdated.id = original.id;
Pertanyaan ini memanfaatkan subkueri bersarang untuk menyertai dua jadual dan melaksanakan kemas kini yang diperlukan. Klausa INNER JOIN memastikan bahawa baris yang dipadankan dalam kedua-dua jadual mempunyai medan nilai yang sama, mewujudkan cantuman yang lebih tepat daripada pendekatan anda sebelum ini.
Peningkatan Prestasi Tambahan
Untuk walaupun keputusan yang lebih cepat, pertimbangkan berikut:
UPDATE tobeupdated INNER JOIN original USING (value) SET tobeupdated.id = original.id;
Kesimpulan
Dengan menggabungkan teknik ini, anda boleh meningkatkan prestasi kemas kini jadual anda dengan ketara. Ingat untuk mempertimbangkan pengindeksan pada medan yang berkaitan dan terokai pengoptimuman pertanyaan tambahan untuk memastikan kecekapan maksimum dalam operasi pangkalan data anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mempercepatkan Kemas Kini MySQL Menggunakan Subqueries Bersarang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!