1

如何更新值“100”如果 $id 通过添加 +100 来重复,那么在级别中的总数将是 200 这是我的 INSERT 语句

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

2 回答 2

2

这应该为您解决问题(我假设 id 是一个唯一字段,可用于识别要更新的正确行):

$query="INSERT INTO 
users (id, name, level) 
VALUES ($id, 'name', 100 ) 
on duplicate key 
    update set level=level+100";
于 2012-09-11T08:06:51.723 回答
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。

于 2012-09-11T08:13:39.003 回答