mysql中如何用一条语句更新主键增加特定的值

mysql> select * from bai_utf8;
+-----+--------+
| id  | myname |
+-----+--------+
|   1 | aa     |
| 100 | ab     |
| 200 | cc     |
| 300 | dd     |
| 400 | ee     |
| 500 | ff     |
+-----+--------+
6 rows in set (0.00 sec)

mysql> show create table bai_utf8;
+----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                                                                                                                   |
+----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| bai_utf8 | CREATE TABLE `bai_utf8` (
  `id` int(11) NOT NULL,
  `myname` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `u_name` (`myname`),
  UNIQUE KEY `u_name2` (`myname`(10))
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> update bai_utf8 set id=id+100;
ERROR 1062 (23000): Duplicate entry '200' for key 'PRIMARY'
mysql> update bai_utf8 set id=id+100 order by id desc;
Query OK, 6 rows affected (0.02 sec)
Rows matched: 6  Changed: 6  Warnings: 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值