我在表a中有一个名为EmpNumber的列。我有一系列记录,其中EmpNumber列以CC开头。例如:CC21、CC33、CC43等。
我想在每个以CC开头的EmpNumber后面附加一个a。
CC21是CC21a,CC33是CC33a,CC41是CC41a
我可以通过指定初始值和要更改的内容来手动执行此操作,但我正在查看几百个手动更改。
对于以CC开头的所有记录,有没有一个查询可以做到这一点?
最佳答案
您可以在update中使用left()
函数和一个case
update table
set EmpNumber = case when left(EmpNumber,2) = 'CC'
then concat(EmpNumber,'a')
else EmpNumber end
left(EmpNumber,2)
将从列中选择开始的2个字符,如left('test',2)
将得到'te',因此在case中比较左函数的结果,如果等于'cc',则用所需字符连接列按照Michael Berkowski的建议进行编辑是的,您可以在
update table
set EmpNumber = concat(EmpNumber,'a')
where left(EmpNumber,2) = 'CC'
关于mysql - 具有相同命名模式的MySQL更新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25553721/