gpt4 book ai didi

mysql - 如何在 MySQL 中实现 initcap 功能?

转载 作者:可可西里 更新时间:2023-11-01 06:31:56 27 4
gpt4 key购买 nike

我需要 initcap 的区域名称功能。有没有办法在 MySQL 中实现这一点?

  • 非洲
  • 印度次大陆
  • 美国西海岸
  • 欧洲/英国

这样的结果可以吗?

最佳答案

以前我在 MySQL 中寻找内置的 initcap/ucfirst 函数,但不幸的是找不到这样的字符串函数,所以决定自己写一个。感谢 MySQL 社区成员纠正了我函数中的错误&回贴。

DELIMITER $$

DROP FUNCTION IF EXISTS `test`.`initcap`$$

CREATE FUNCTION `initcap`(x char(30)) RETURNS char(30) CHARSET utf8
READS SQL DATA
DETERMINISTIC
BEGIN
SET @str='';
SET @l_str='';
WHILE x REGEXP ' ' DO
SELECT SUBSTRING_INDEX(x, ' ', 1) INTO @l_str;
SELECT SUBSTRING(x, LOCATE(' ', x)+1) INTO x;
SELECT CONCAT(@str, ' ', CONCAT(UPPER(SUBSTRING(@l_str,1,1)),LOWER(SUBSTRING(@l_str,2)))) INTO @str;
END WHILE;
RETURN LTRIM(CONCAT(@str, ' ', CONCAT(UPPER(SUBSTRING(x,1,1)),LOWER(SUBSTRING(x,2)))));
END$$

DELIMITER ;


Usage:

select initcap('This is test string');

关于mysql - 如何在 MySQL 中实现 initcap 功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12364086/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com