将数据库字段加1

使用MySQL,如果我有一个字段,例如登录名,我将如何在sql命令中将该字段更新为1?

我正在尝试创建一个INSERT查询,该查询创建firstName,lastName和登录名。但是,如果firstName和lastName的组合已经存在,则将登录数增加1。

因此表格可能看起来像这样。

firstName----|----lastName----|----logins

John Jones 1

Steve Smith 3

我需要一个命令,该命令在运行时会插入一个新的人(即Tom Rogers),或者如果使用约翰·琼斯的名字则增加登录名。

回答:

更新条目:

一个简单的增量就可以解决问题。

UPDATE mytable 

SET logins = logins + 1

WHERE id = 12

插入新行,或更新(如果已存在):

如果您想更新先前存在的行,或者如果不存在则将其插入,则可以使用REPLACE语法或INSERT...ON

DUPLICATE KEY UPDATE选项(如Rob Van Dam在他的回答中所示)。

插入新条目:

也许您正在寻找类似的东西INSERT...MAX(logins)+1?本质上,您将运行类似于以下内容的查询-根据您的特定需求,可能会更复杂一些:

INSERT into mytable (logins) 

SELECT max(logins) + 1

FROM mytable

以上是 将数据库字段加1 的全部内容, 来源链接: utcz.com/qa/402593.html

回到顶部