Athena SQL如何实现字段内容转换为Proper Case格式
在Amazon Athena中实现字段内容转Proper Case的方法
Athena底层基于Presto引擎,你可以通过以下两种方式实现需求:
- 常规场景直接用内置
initcap()函数,该函数会自动将字符串中每个单词的首字母转为大写,其余字符转为小写,完全匹配你给出的国家名转换需求,用法示例:
示例中输入SELECT initcap(Country) AS country_proper_case FROM 你的表名;united states会直接返回United States,即使原始字段是全大写的UNITED STATES也能正确转换。 - 存在特殊分隔符的场景(比如国家名包含连字符
new-zealand、下划线等),可以用自定义逻辑实现更灵活的转换,用法示例:SELECT array_join( transform( split(Country, '[- _]'), -- 方括号内可自定义需要识别的分隔符,示例同时支持连字符、空格、下划线 word -> concat(upper(substr(word, 1, 1)), lower(substr(word, 2))) ), ' ' -- 最终拼接的分隔符可按需修改 ) AS country_proper_case FROM 你的表名;
内容的提问来源于stack exchange,提问作者Pramod
相关产品推荐
相关产品推荐

