SQL 字符串函数
InfluxDB 集群版 SQL 实现支持以下字符串函数来操作字符串值
- ascii
- bit_length
- btrim
- char_length
- character_length
- concat
- concat_ws
- chr
- ends_with
- find_in_set
- initcap
- instr
- left
- length
- levenshtein
- lower
- lpad
- ltrim
- md5
- octet_length
- overlay
- position
- repeat
- replace
- reverse
- right
- rpad
- rtrim
- split_part
- starts_with
- strpos
- substr
- substr_index
- to_hex
- translate
- trim
- upper
- uuid
ascii
返回字符串中第一个字符的 ASCII 值。
ascii
返回一个 32 位整数。要与 InfluxDB 一起使用,请将返回值转换为 64 位整数。
ascii(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
bit_length
返回字符串的位长度。
bit_length
返回一个 32 位整数。要与 InfluxDB 一起使用,请将返回值转换为 64 位整数。
bit_length(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
btrim
从字符串的开头和结尾修剪指定的修剪字符串。如果未提供修剪字符串,则从输入字符串的开头和结尾删除所有空格。
btrim(str[, trim_str])
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- trim_str:要从输入字符串的开头和结尾修剪的字符串表达式。可以是常量、列或函数,以及算术运算符的任意组合。默认值为空白字符。
相关函数
char_length
length 的别名。
character_length
length 的别名。
concat
将多个字符串连接在一起。
concat(str[, ..., str_n])
参数
- str:要连接的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- str_n:后续要连接的字符串表达式。
相关函数
concat_ws
使用指定的分隔符将多个字符串连接在一起。
concat_ws(separator, str[, ..., str_n])
参数
- separator:插入到连接的字符串之间的分隔符。
- str:要连接的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- str_n:后续要连接的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
chr
返回具有指定 ASCII 或 Unicode 代码值的字符。
chr(expression)
参数
- expression:包含要操作的 ASCII 或 Unicode 代码值的表达式。可以是常量、列或函数,以及算术或字符串运算符的任意组合。
相关函数
ends_with
测试字符串是否以子字符串结尾。
ends_with(str, substr)
参数
- str:要测试的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:要测试的子字符串。
find_in_set
返回字符串在逗号分隔的子字符串列表中的位置。如果字符串不在子字符串列表中,则返回 0。
find_in_set(str, strlist)
参数
- str:要在
strlist
中查找的字符串表达式。 - strlist:包含逗号分隔的子字符串列表的字符串。
initcap
将输入字符串中每个单词的首字母大写。单词由非字母数字字符分隔。
initcap(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
instr
返回子字符串在字符串中首次出现的位置(从 1 开始)。如果子字符串不在字符串中,则该函数返回 0。
instr(str, substr)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:要搜索的子字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
left
从字符串的左侧返回指定数量的字符。
left(str, n)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- n:要返回的字符数。
相关函数
length
返回字符串中的字符数。
char_length
返回一个 32 位整数。要与 InfluxDB 一起使用,请将返回值转换为 64 位整数。
length(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
别名
- char_length
- character_length
相关函数
levenshtein
返回两个字符串之间的 Levenshtein 距离。
levenshtein(str1, str2)
参数
- str1:要操作的第一个字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- str2:要操作的第二个字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
lower
将字符串转换为小写。
lower(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
lpad
用另一个字符串填充字符串的左侧,使其达到指定的字符串长度。
lpad(str, n[, padding_str])
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- n:要填充到的字符串长度。
- padding_str:要填充的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。默认值为空格。
相关函数
ltrim
从字符串中删除前导空格。
ltrim(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
md5
计算字符串表达式的 MD5 128 位校验和。
md5(str)
参数
- expression:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
octet_length
返回字符串的字节长度。
length
返回一个 32 位整数。要与 InfluxDB 一起使用,请将返回值转换为 64 位整数。
octet_length(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
overlay
使用指定的起始位置和要替换的字符数,用另一个子字符串替换字符串的一部分。
overlay(str PLACING substr FROM pos [FOR count])
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:用于替换指定字符串 (
str
) 部分的子字符串。可以是常量、列或函数,以及字符串运算符的任意组合。 - pos:子字符串替换 (
substr
) 的起始位置。 - count:从起始位置 (
pos
) 开始,要用子字符串 (substr
) 替换的字符串 (str
) 中的字符数。如果未指定,则该函数使用子字符串的长度。
position
返回子字符串在字符串中的位置。
position(substr IN str)
参数
- substr:要搜索的子字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- str:要搜索的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
repeat
返回一个字符串,其中输入字符串重复指定的次数。
repeat(str, n)
参数
- str:要重复的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- n:输入字符串的重复次数。
replace
将字符串中指定子字符串的所有出现次数替换为新的子字符串。
replace(str, substr, replacement)
参数
- str:要重复的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:要在输入字符串中替换的子字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- replacement:替换子字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
reverse
反转字符串的字符顺序。
reverse(str)
参数
- str:要重复的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
right
从字符串的右侧返回指定数量的字符。
right(str, n)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- n:要返回的字符数。
相关函数
rpad
用另一个字符串填充字符串的右侧,使其达到指定的字符串长度。
rpad(str, n[, padding_str])
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- n:要填充到的字符串长度。
- padding_str:要填充的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。默认值为空格。
相关函数
rtrim
从字符串中删除尾随空格。
rtrim(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
split_part
根据指定的分隔符拆分字符串,并返回指定位置的子字符串。
split_part(str, delimiter, pos)
参数
- str:要拆分的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- delimiter:要拆分成的字符串或字符。
- pos:要返回的部分的位置。
starts_with
测试字符串是否以子字符串开头。
starts_with(str, substr)
参数
- str:要测试的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:要测试的子字符串。
strpos
返回指定子字符串在字符串中的起始位置。位置从 1 开始。如果子字符串在字符串中不存在,则该函数返回 0。
strpos
返回一个 32 位整数。要与 InfluxDB 一起使用,请将返回值转换为 64 位整数。
strpos(str, substr)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- substr:要搜索的子字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
substr
从字符串中的特定起始位置提取指定字符数的子字符串。
substr(str, start_pos[, length])
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- start_pos:子字符串的起始字符位置。字符串中的第一个字符的位置为 1。
- length:要提取的字符数。如果未指定,则返回起始位置后的字符串的其余部分。
substr_index
返回在字符串 (str
) 中指定数量 (count
) 的分隔符 (delimiter
) 出现之前或之后出现的子字符串。如果计数为正数,则该函数返回最后一个分隔符(从左侧计数)左侧的所有内容。如果计数为负数,则该函数返回最后一个分隔符(从右侧计数)右侧的所有内容。
substr_index(str, delimiter, count)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- delimiter:用于分隔字符串 (
str
) 中子字符串的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。 - count:要拆分的第 N 个分隔符 (
delimiter
) 出现次数。可以是常量、列或函数,以及算术运算符的任意组合。支持正数和负数。
translate
将字符串中的字符转换为指定的转换字符。
translate(str, chars, translation)
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
- chars:要转换的字符。
- translation:转换字符。转换字符仅替换 chars 字符串中相同位置的字符。
to_hex
将整数转换为十六进制字符串。
to_hex(int)
参数
- int:要转换的整数表达式。可以是常量、列或函数,以及算术运算符的任意组合。
trim
从字符串中删除前导和尾随空格。
trim(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
upper
将字符串转换为大写。
upper(str)
参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及字符串运算符的任意组合。
相关函数
uuid
返回每个行唯一的 UUID v4 字符串值。
uuid()
此页是否对您有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一份子!我们欢迎并鼓励您提供关于 InfluxDB 集群版和本文档的反馈和错误报告。要获得支持,请使用以下资源
拥有年度合同或支持合同的客户可以联系 InfluxData 支持。