Dalam jadual pangkalan data yang mengandungi senarai item makanan dengan medan "Kedudukan" yang mewakili pesanan mereka dalam senarai, keperluan sering timbul untuk menyusun semula pesanan mereka berdasarkan perubahan pada satu rekod. Pertanyaan yang disediakan oleh poster asal melibatkan proses berbilang langkah yang rumit yang melibatkan pengekstrakan data, manipulasi dalam JavaScript dan berbilang kemas kini pangkalan data.
Walau bagaimanapun, pendekatan yang lebih cekap yang menyelesaikan isu dengan satu pertanyaan ialah:
<code class="sql">UPDATE my_table SET position = position * 10;</code>
Pertanyaan ini mendarabkan kedudukan semua rekod dalam jadual dengan 10, mewujudkan jurang yang cukup antara kedudukan. Selepas itu, kemas kini ringkas kepada rekod sasaran untuk mengalihkan "Pear" ke kedudukan yang diingini boleh dicapai dengan mudah dengan pertanyaan berikut:
<code class="sql">UPDATE my_table SET position = 15 WHERE listId=1 AND name = 'Pears';</code>
Untuk menangani sebarang kebimbangan mengenai jurang yang hilang dari semasa ke semasa akibat penyusunan semula yang berikutnya, pertanyaan yang diberikan sebelum ini boleh dilaksanakan secara berkala untuk mengemas kini kedudukan dan mengekalkan jarak yang diperlukan. Menggunakan pendekatan pertanyaan tunggal yang cekap ini, menyusun semula susunan item makanan menjadi tugas yang mudah.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyusun Semula Berbilang Rekod Dengan Cekap Berdasarkan Kemas Kini Tunggal dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!