Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Kemas Kini Massal Entri MySQL dengan Nilai Tertentu Menggunakan CASE?
Pengemaskinian Massal Entri MySQL dengan CASE untuk Nilai Baharu
Dalam MySQL, mengemas kini entri menggunakan ungkapan CASE membolehkan anda menetapkan nilai yang berbeza kepada lajur berdasarkan keadaan tertentu. Untuk membetulkan pertanyaan yang diberikan, alih keluar koma selepas kata kunci yang ditetapkan dan formatkan ungkapan CASE seperti berikut:
UPDATE ae44 SET price = CASE WHEN ID = 'AT259793380' THEN '500' WHEN ID = 'AT271729590' THEN '600' WHEN ID = 'AT275981020' THEN '700' END
Pertanyaan ini akan mengemas kini harga yang sepadan untuk ID yang ditentukan. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa ia juga akan menetapkan nilai harga kepada NULL untuk sebarang rekod dengan ID yang tidak disertakan dalam ungkapan CASE.
Jika anda hanya mahu mengemas kini harga untuk ID tertentu dalam anda senarai, gunakan pertanyaan seperti ini:
UPDATE ae44 JOIN ( SELECT 'AT259793380' AS oldval, '500' AS newval UNION ALL SELECT 'AT271729590' AS oldval, '600' AS newval UNION ALL SELECT 'AT275981020' AS oldval, '700' AS newval ) q ON ae44.id = q.oldval SET price = q.newval
Pertanyaan ini menggunakan subkueri untuk mencipta jadual dengan nilai lama dan baharu untuk ID, kemudian ia menyertai jadual ini dengan jadual ae44 dan melakukan kemas kini sahaja pada rekod yang sepadan.
Atas ialah kandungan terperinci Bagaimana untuk Kemas Kini Massal Entri MySQL dengan Nilai Tertentu Menggunakan CASE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!