我有一个mysql数据库表,我需要在productcode
数字高于500的某个列/字段(category
)的所有值中添加前缀“35-”。所以我例如,希望将productcode值123A56B789
更改为35-123A56B789
,并在表的所有其他行中使用类似值。
另一个问题是此列是该表的主键,但我试图通过添加一个额外的索引列来解决这个问题,将其定义为主键,删除“productcode”上的索引并尝试以下操作查询(以后再次将其定义为主索引):
UPDATE my_table
SET productcode = '35-' + productcode
WHERE category >= 500
我没有收到任何错误或警告信息(即使是“xxxx行受影响”的消息),但没有任何明显的效果 - 产品代码与以前保持一致。
有没有一种方法可以直接在MYSQL中实现?
答案 0 :(得分:1)
您可以使用CONCAT
将35-添加到productcode列的开头。检查一下。
UPDATE my_table SET productcode = CONCAT('35-', productcode) WHERE category >= 500;