我在Mysql数据库的表JobData中有一个名为“ Supervisor”的表名。在此“主管”列中,记录的格式为“ SPARKSL”,“ ADITYAG”,“ KENTONS”,“ DRISCOLLJ”等等。我想将这些记录转换为小写,并将最后一个字母转换为第一个字母。例如,应将“ SPARKSL”更改为“ lsparks”格式,并将此格式应用于所有其余记录。
有人可以通过SQL查询帮助我吗?
答案 0 :(得分:1)
您基本上可以使用left()
和right()
来提取部分,concat()
将它们放在一起(以相反的顺序),然后将lower()
转换为小写
SELECT lower(concat(right(supervisor, 1), left(supervisor, length(supervisor) - 1)))
FROM jobdata;
或者,如果您要更新:
UPDATE jobdata
SET supervisor = lower(concat(right(supervisor, 1), left(supervisor, length(supervisor) - 1)));
(但是请注意,这将更新所有行!如果您不希望发生这种情况,请添加WHERE
子句。)