在MySQL表行中使用添加?

时间:2012-09-11 08:05:58

标签: php mysql

如何更新值“100”如果$ id重复加上+100,那么总数将为200 这是我的INSERT语句

  INSERT INTO users (id, name, level) VALUES ($id, 'name', 100 ) 

2 个答案:

答案 0 :(得分:2)

这应该适合你(我假设id是一个唯一的字段,可用于识别要更新的正确行):

$query="INSERT INTO 
users (id, name, level) 
VALUES ($id, 'name', 100 ) 
on duplicate key 
    update set level=level+100";

答案 1 :(得分:0)

由于UPDATE是MySQL特定的,因此更通用的方法 INSERT INTO users (id,name,level) VALUES ($id, 'name', 100) ON DUPLICATE KEY UPDATE level = level + VALUES(level)

参见http://dev.mysql.com/doc/refman/5.1/de/insert-on-duplicate.html AFAIK更普遍适用于MySQL。