如何在代码'001'和MySql中的代码'009'中添加+1?

时间:2016-03-31 18:15:40

标签: mysql database

我正在尝试为代码'001'添加+1,但我得到'2'而不是'002和+1代码'009'但我得到'10'而不是'010'。

表:

create table example
(
    code        varchar(7),
    row1        varchar(10),
    row2        varchar(7),


CONSTRAINT pk_code PRIMARY KEY (code)

);

插入:

insert into example(code, row1, row2) 
values('001','x1', 'y1');

insert into example(code, row1, row2) 
values('009','x2', 'y2');

我尝试下一个查询:

select code+1 from example;

MySql返回我:

+----------+
|    code  |
+----------+
|        2 |
|       10 |
+----------+

1 个答案:

答案 0 :(得分:2)

要进行数学运算,MySQL会将您的字符串转换为数字,结果当然也是一个数字。使用LPAD将其再次转换为字符串

select LPAD(code+1, 3, '0') from example;