我想了解如何更新具有不同值的多行,而我只是不明白它。解決方案無處不在,但對我來說,看起來很難理解。MySQL - 在一個查詢中更新具有不同值的多行
例如,三次更新到1個查詢:
UPDATE table_users
SET cod_user = '622057'
, date = '12082014'
WHERE user_rol = 'student'
AND cod_office = '123456';
UPDATE table_users
SET cod_user = '2913659'
, date = '12082014'
WHERE user_rol = 'assistant'
AND cod_office = '123456';
UPDATE table_users
SET cod_user = '6160230'
, date = '12082014'
WHERE user_rol = 'admin'
AND cod_office = '123456';
我read一個例子,但是我真的不知道如何使查詢。即:
UPDATE table_to_update
SET cod_user= IF(cod_office = '123456','622057','2913659','6160230')
,date = IF(cod_office = '123456','12082014')
WHERE ?? IN (??) ;
我不完全清楚如何做的查詢如果有多個條件在WHERE和IF條件..任何想法?
我該怎麼做才能執行更新,如果記錄已經存在 – franvergara66 2014-09-07 02:21:05
@ franvergara66。 。 。我不明白你的評論。 'update's隻影響已經存在的記錄。 – 2014-09-07 02:47:31
打擾我的英語先生,當我嘗試進行更新MySQL給我的錯誤:#1062 - 重複項'XXX'爲'PRIMARY'鍵。當我嘗試用已有的相同值更新記錄時,如果當前值與正在更新的值相同,是否有任何方法可以跳過更新? – franvergara66 2014-09-07 03:03:37