ฉันพยายามทำความเข้าใจวิธีการอัปเดตหลายแถวด้วยค่าที่แตกต่างกัน แต่ฉันไม่เข้าใจ ทางออกมีอยู่ทุกที่ แต่สำหรับฉันแล้วมันดูยากที่จะเข้าใจ
ตัวอย่างเช่นการอัปเดตสามรายการใน 1 แบบสอบถาม:
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';
ฉันอ่านตัวอย่าง แต่ฉันไม่เข้าใจวิธีสร้างแบบสอบถาม กล่าวคือ:
UPDATE table_to_update
SET cod_user= IF(cod_office = '17389551','622057','2913659','6160230')
,date = IF(cod_office = '17389551','12082014')
WHERE ?? IN (??) ;
ฉันไม่ชัดเจนว่าจะทำแบบสอบถามอย่างไรหากมีหลายเงื่อนไขใน WHERE และในเงื่อนไข IF .. มีความคิดอย่างไร