Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengemas kini Berbilang Rekod dalam SQL Berdasarkan Perubahan Rekod Tunggal?
Mengubah Suai Berbilang Rekod Berdasarkan Perubahan Rekod Tunggal dalam SQL
Soalan:
Cara mengemas kini kedudukan berbilang rekod dalam jadual berdasarkan perubahan kedudukan rekod tunggal?
Penyelesaian:
Untuk menangani isu ini, pertanyaan kompleks yang mengubah suai beberapa rekod mungkin diperlukan. Walau bagaimanapun, dengan pelarasan ringkas kepada struktur data, kami boleh memudahkan proses dan menyelesaikannya dengan satu pertanyaan yang mengubah suai hanya rekod yang diingini.
Dalam contoh yang disediakan, jadual mengandungi medan "Kedudukan" untuk memesan item dalam senarai yang dikenal pasti oleh "ListID." Mengalihkan item (mis., "Pear" ke sebelum "Cip") melibatkan penetapan kedudukannya kepada kedudukan yang diingini dan melaraskan kedudukan semua item di antaranya.
Matlamat kami adalah untuk mencapai satu pertanyaan tanpa bergantung pada pemprosesan tambahan atau berbilang pertanyaan.
Seterusnya, kami boleh menggunakan pertanyaan berikut:
<code class="sql">UPDATE my_table SET position = 15 WHERE listId=1 AND name = 'Pears';</code>
Andaikan, pada masa hadapan, jurang muncul antara item disebabkan penyusunan semula berulang. Untuk menyelesaikan isu ini, kami boleh melaksanakan pertanyaan berikut secara berkala:
<code class="sql">UPDATE my_table SET position = position * 10;</code>
Dengan mendarabkan nilai kedudukan dengan 10, kami memperkenalkan jurang yang mencukupi untuk menampung pelarasan masa hadapan tanpa kehilangan maklumat pesanan.
Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Berbilang Rekod dalam SQL Berdasarkan Perubahan Rekod Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!