Mysql 在重复密钥上增加AI

Mysql 在重复密钥上增加AI,mysql,sql,duplicates,Mysql,Sql,Duplicates,我有一个sql查询,具有重复键条件 INSERT INTO users (username) VALUES (username) ON DUPLICATE KEY update ics = ics +1; 我的桌子看起来像 表:用户 字段:userID,username,具有userID的IC具有AI 当我插入一个用户时,AI计数增加,当ON重复键工作时,AI计数也增加 当用户存在时,只有ics字段更新。不是人工智能计数 怎么了 我的问题是,当我有一个重复的密钥时,下一个id更高 感谢您的帮助

我有一个sql查询,具有重复键条件

INSERT INTO users (username) VALUES (username) ON DUPLICATE KEY update ics = ics +1;
我的桌子看起来像

表:用户 字段:userID,username,具有userID的IC具有AI

当我插入一个用户时,AI计数增加,当ON重复键工作时,AI计数也增加

当用户存在时,只有ics字段更新。不是人工智能计数

怎么了

我的问题是,当我有一个重复的密钥时,下一个id更高


感谢您的帮助。

假设用户名确实是唯一的,您需要确保在
用户名
列上定义了一个
唯一索引
。如果没有,你就会遇到问题

CREATE UNIQUE INDEX id_index ON users (username);

否则,您的
插入。。。更新
可以实现您想要的结果。

假设用户名确实是唯一的,您需要确保在
用户名
列上定义了一个
唯一索引
。如果没有,你就会遇到问题

CREATE UNIQUE INDEX id_index ON users (username);

否则,您的
插入。。。更新
对于实现您想要的结果很好。

为什么您关心人工整数索引的值?它们可以是完全随机的,逻辑上没有任何变化。你确定
username
有唯一的索引吗?问题是,实际上最后一个AI太多了。。我在脚本中使用这个查询,他一直工作到2周。我想在找到用户名的地方增加ics,在找不到用户名的地方增加ics。你为什么关心人工整数索引的值?它们可以是完全随机的,逻辑上没有任何变化。你确定
username
有唯一的索引吗?问题是,实际上最后一个AI太多了。。我在脚本中使用这个查询,他一直工作到2周。我想在用户名为find的地方增加ics,在用户名不为find的地方增加ics。