将CONCAT增量添加到varchar(128)

时间:2016-12-03 13:27:10

标签: mysql

您好我试图更新表格,将我的产品文字参考转换为蒙面数字。

我有: 产品a,产品b,产品c ....现在有1500种产品 我需要改为: PP1001,PP1002,PP1003适用于所有....它应该始终是PPXXXX - 其中XXX是递增数字。

到目前为止,我已尝试过以下声明:

UPDATE `cl13-workflow`.`llx_product`
SET `ref`= concat('PP','1000'+1) WHERE `rowid` ='10';

任何人都可以在我出错的地方帮忙吗?我需要将它应用到整个产品表中。我假设我删除它会起作用但它不会增加数字位数。

MySQL Table

MySQL Products Table Rows

Table: llx_product
Columns:
rowid int(11) AI PK 
ref varchar(128) 
entity int(11) 
ref_ext varchar(128) 
datec datetime 
tms timestamp 
virtual tinyint(4) 
fk_parent int(11) 
label varchar(255) 
description text 
note text 
customcode varchar(32) 
fk_country int(11) 
price double(24,8) 
price_ttc double(24,8) 
price_min double(24,8)

....还有更多列

1 个答案:

答案 0 :(得分:0)

在表格中创建一个AUTO_INCREMENT字段,然后就可以这样做。

<强>样品

UPDATE `cl13-workflow`.`llx_product` SET `ref`= concat('PP',LPAD(id, 4, '0')) WHERE `rowid` ='10';