我在Products表中有一列ProductName。用户可以复制产品。在复制产品时,我必须从产品表中为特定产品复制所有字段,并创建除ProductName字段外的新记录。该产品名称字段应该如下:如何在mysql中为每个记录插入附加一个增量数字
的第一个副本:ProductName_Copy_1
为第二重复:ProductName_Copy_2
等
任何人都可以建议我如何做到这一点。
我在Products表中有一列ProductName。用户可以复制产品。在复制产品时,我必须从产品表中为特定产品复制所有字段,并创建除ProductName字段外的新记录。该产品名称字段应该如下:如何在mysql中为每个记录插入附加一个增量数字
的第一个副本:ProductName_Copy_1
为第二重复:ProductName_Copy_2
等
任何人都可以建议我如何做到这一点。
使用子查询来生成数:
insert into product
select
concat(productname, '_',
(select count(*) from product
where productname like concat(p.productname, '%')),
col2, col3, ....
from product p
where id = <original product id to copy>
那么,如果你正在使用的phpmyadmin,有一个auto_increment属性你可以设置为行。每行将由该值唯一标识。
更多信息可以在这里找到 http://dev.mysql.com/doc/refman/5.7/en/example-auto-increment.html
感谢您的答复。它运作良好。 – user2219742
http://meta.stackoverflow.com/questions/314202/why-was-this-question-considered-primarily-opinion-based –