字符串函数如下表所示:
函数
功能
CONCAT
将多个字符串连接在一起。
CONCAT_WS
将多个字符串按照指定的分隔符连接在一起。
FIND_IN_SET
在以逗号分隔的字符串中查找指定字符串的位置。
FORMAT_NUMBER
将数字格式化成带千分位和指定小数位的字符串。
JSON_EXTRACT
从 JSON 字符串中提取指定路径的值。
LENGTH
计算字符串长度。
LOWER
将字符串中的大写字符转换为对应的小写字符。
LPAD
将字符串向左补足到指定位数。
LTRIM
删除字符串左端空白字符。
REMOVE_STRING
移除字符串中的指定字符。
REPLACE
将字符串中与指定字符串匹配的子串替换为另一字符串。
RPAD
将字符串向右补足到指定位数。
RTRIM
删除字符串右端空白字符。
SUB_STRING
从一个字符串中的指定位置截取子字符串。
TRIM
删除字符串左右两端的空白字符。
UPPER
将字符串中的小写字符转换为对应的大写字符。
函数说明
参数说明
expr1 :必填,任意类型。待拼接的参数 1。
expr2 :必填,任意类型。待拼接的参数 2。
exprN :可变参数,非必填,任意类型。待拼接的参数 N。
返回值说明
返回拼接后的字符串,如果任一输入参数值为 NULL,则函数结果返回 NULL。
支持的计算引擎
MaxCompute(ODPS)、MYSQL、RDS、HIVE、AnalyticDB PostgreSQL(ADB_PG)、POLAR_PG、POSTGRESQL、SPARK。
将参数中的多个字符串按照指定的分隔符连接在一起。
separator :必填,文本类型。指定的分隔符。
在以逗号为分割的字符串中查找子串,返回 subStr 在以逗号(,)分隔的字符串 listStr 中的位置,从 1 开始计数; 如果没有找到返回 0;subStr 或 listStr 为 NULL 时返回 NULL。
subStr :必填,文本类型。待查找的子串。
listStr :必填,文本类型。以逗号分隔的字符串。
返回 subStr 在 listStr 中的位置,从 1 开始计数,如果没有找到返回 0;subStr 或 listStr 为 NULL 时返回 NULL。
MaxCompute(ODPS)、MYSQL、RDS、HIVE、SPARK。
number :必填,数值类型。待格式化的数字。
scale :必填,整数类型。保留的小数位。
返回格式化后的字符串,当 number 为 NULL 时返回 NULL。
从 JSON 字符串 source 中提取指定路径 path 的字符串值。
path 的格式为:
'$':表示根节点。
'.'表示提取子节点(如$.a)。
[number]表示提取数组元素,下标从 0 开始(如$.a[2])。
source :必填,文本类型。JSON 源数据。
path :必填,文本类型。提取的路径。
如果 JSON 合法,path 也存在,则返回对应字符串;如果 source 为不合法的 JSON,或者 path 为 NULL,或者 JSON 中 path 对应的内容不存在,则返回 NULL。
MaxCompute(ODPS)、MYSQL(5.7+)、RDS、HIVE、AnalyticDB PostgreSQL(ADB_PG)、POLAR_PG、POSTGRESQL、SPARK。
计算字符串 str 的长度,str 为 NULL 时返回 NULL。
str :必填,文本类型。待计算的字符串。
返回字符串 str 的长度,str 为 NULL 时返回 NULL。
将字符串 source 中的大写字符转换为对应的小写字符。
source :必填,文本类型。源字符串。
返回转为小写字符后的字符串,source 为 NULL 时返回 NULL。
用字符串 str2 将字符串 str1 向左补足到 length 位。
str1 :必填,文本类型。待向左补位的字符串。
length :必填,整数类型。向左补位位数。
str2 :必填,文本类型。补位的字符串。
返回向左补足后的字符串,任一输入参数为 NULL 则返回结果为 NULL。如果 length 小于 str1 的位数,则返回 str1 从左开始截取 length 位的字符串。
删除字符串 source 左端的空白字符。
返回 source 删除左端空白字符后的字符串,source 为 NULL 时返回 NULL。
将源字符串 source 中与 subStr 字符串完全重合的部分移除并返回新的字符串,如果没有重合的字符串,返回源字符串 source。
subStr :必填,文本类型。待移除的子字符串。
移除子串后的新字符串。如果任一输入参数值为 NULL,返回 NULL。
用 newStr 字符串替换 source 字符串中与 oldStr 字符串完全重合的部分并返回替换后的新字符串,如果没有重合的字符串,返回源字符串 source。
oldStr :必填,文本类型。待比较的字符串。
newStr :必填,文本类型。替换后的字符串。
返回替换后的新字符串。如果任一输入参数值为 NULL,返回 NULL。
用字符串 str2 将字符串 str1 向右补足到 length 位。
str1 :必填,文本类型。待向右补位的字符串。
length :必填,整数类型。向右补位位数。
返回向右补足后的字符串,任一输入参数为 NULL 则返回结果为 NULL。如果 length 小于 str1 的位数,则返回 str1 从左开始截取 length 位的字符串。
删除字符串 source 右端的空白字符。
返回 source 删除右端空白字符后的字符串,source 为 NULL 时返回 NULL。
返回字符串 source 从 startPosition 开始,长度为 length 的子串。
startPosition 的计数规则:
startPosition 从 1 开始计数。
当 startPosition 为 0 时,返回空串。
当 startPosition 为负数时,表示开始位置是从字符串的结尾往前倒数,最后一个字符是-1,依次往前倒数。
startPosition :必填,整数类型。子串的起始位置。
length :选填,整数类型。子串的长度值,值必须大于 0,当设置为常量值 null 时,返回到 source 结尾的子串。
返回截取后的子字符串,source 或者 startPosition 为 NULL 时返回 NULL。
删除字符串 source 两端的空白字符。
返回 source 删除两端空白字符后的字符串,source 为 NULL 时返回 NULL。
将字符串 source 中的小写字符转换为对应的大写字符,source 为 NULL 时返回 NULL。
返回转为大写字符后的字符串,source 为 NULL 时返回 NULL。