Rumah >pangkalan data >tutorial mysql >Bagaimana Mengemas kini Berbilang Baris MySQL dengan Cekap dengan Nilai Berbeza?

Bagaimana Mengemas kini Berbilang Baris MySQL dengan Cekap dengan Nilai Berbeza?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-17 11:21:12491semak imbas

How to Efficiently Update Multiple MySQL Rows with Different Values?

Mengemas kini nilai berbeza bagi rekod berbilang baris MySQL dengan cekap

Pengenalan

Mengemas kini berbilang baris dengan nilai berbeza mungkin mencabar, terutamanya dengan keadaan WHERE yang kompleks. Artikel ini bertujuan untuk memudahkan proses ini dengan menerangkan secara terperinci dua kaedah yang paling biasa digunakan: pertanyaan berbilang kenyataan dan kemas kini bersyarat.

Kaedah 1: Pertanyaan berbilang pernyataan

Pertanyaan berbilang pernyataan membolehkan anda melaksanakan berbilang perintah KEMASKINI dalam satu pertanyaan. Walaupun kaedah ini mudah dan mudah, ia boleh menjadi sukar untuk set data yang besar. Contoh yang anda berikan boleh dilaksanakan seperti berikut:

<code class="language-sql">UPDATE table_users
SET cod_user = '622057', date = '12082014'
WHERE user_rol = 'student' AND cod_office = '17389551';

UPDATE table_users
SET cod_user = '2913659', date = '12082014'
WHERE user_rol = 'assistant' AND cod_office = '17389551';

UPDATE table_users
SET cod_user = '6160230', date = '12082014'
WHERE user_rol = 'admin' AND cod_office = '17389551';</code>

Kaedah 2: Kemas kini bersyarat menggunakan pernyataan CASE

Kemas kini bersyarat membolehkan anda menggunakan nilai berbeza pada baris berbeza berdasarkan syarat. Contoh yang anda berikan boleh diutarakan semula seperti berikut:

<code class="language-sql">UPDATE table_users
SET cod_user = CASE
    WHEN user_role = 'student' THEN '622057'
    WHEN user_role = 'assistant' THEN '2913659'
    WHEN user_role = 'admin' THEN '6160230'
END,
date = '12082014'
WHERE user_role IN ('student', 'assistant', 'admin') AND
cod_office = '17389551';</code>

Kaedah ini lebih cekap daripada pertanyaan berbilang pernyataan, terutamanya dalam kes set data yang besar. Ia juga menyediakan cara yang lebih bersih dan jelas untuk mengemas kini berbilang baris rekod.

Nota:

Pastikan anda menyimpan tarikh dalam format asli pangkalan data yang konsisten untuk mengelakkan masalah yang mungkin berlaku.

Atas ialah kandungan terperinci Bagaimana Mengemas kini Berbilang Baris MySQL dengan Cekap dengan Nilai Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn