我需要重新格式化列uk_city中的数据,现在所有行条目都是大写的,我想重新格式化为FirstChr大写和其他小写。
FELTON to Felton
FENNY COMPTON to Fenny Compton发布于 2011-10-18 14:12:30
我发布了一个发现here的函数
CREATE FUNCTION CAP_FIRST (input VARCHAR(255))
RETURNS VARCHAR(255)
DETERMINISTIC
BEGIN
DECLARE len INT;
DECLARE i INT;
SET len = CHAR_LENGTH(input);
SET input = LOWER(input);
SET i = 0;
WHILE (i < len) DO
IF (MID(input,i,1) = ' ' OR i = 0) THEN
IF (i < len) THEN
SET input = CONCAT(
LEFT(input,i),
UPPER(MID(input,i + 1,1)),
RIGHT(input,len - i - 1)
);
END IF;
END IF;
SET i = i + 1;
END WHILE;
RETURN input;
END;如果在数据库中创建此函数,则可以执行以下操作
UPDATE uk_city SET name = CAP_FIRST(name);https://stackoverflow.com/questions/7803066
复制相似问题