我有一个包含五列的表:uid, lead_id, form_id, field_number, value
。
我想更新value
WHERE
lead_id, form_id, and field_number
存在。在我的脚本中,我不知道id(不执行查询),但是lead_id, form_id, field_number
TOGETHER也是unique
。有时,此行将NOT exist
并且必须是插入而不是更新。
它变得更复杂,因为我有大约30行,value
列,我想要更新/插入,而宁愿在一个查询中执行此操作。
更新 这基本上是我今天使用的,但它不会(显然)更新不存在的行。因此,如果数据最初未填充,但已添加到更新中,则此数据不会添加到数据库中。
以下是我目前的情况:
更新someTableName SET值= field_number 当field_number_value_1那么'newValue1' 当field_number_value_2那么'newValue2' 当field_number_value_3然后'newValue3' 结束 WHERE form_id = 3 AND lead_id = 37 AND field_number IN field_number_value_1,field_number_value_2,field_number_value_3“;
答案 0 :(得分:1)
INSERT INTO table (uid, lead_id, form_id, field_number, value)
VALUES (1, 1, 1, 1, 0)
ON DUPLICATE KEY UPDATE value = value + 1 ;