SQL 字符串函数
InfluxDB 3 Core SQL 实现支持以下用于操作字符串值的字符串函数:
- ascii
- bit_length
- btrim
- char_length
- character_length
- chr
- concat
- concat_ws
- contains
- ends_with
- find_in_set
- initcap
- instr
- left
- length
- levenshtein
- lower
- lpad
- ltrim
- octet_length
- overlay
- position
- repeat
- replace
- reverse
- right
- rpad
- rtrim
- split_part
- starts_with
- strpos
- substr
- substr_index
- substring
- substring_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 的别名。
chr
返回具有指定 ASCII 或 Unicode 码值的字符。
chr(expression)参数
- expression:包含要操作的 ASCII 或 Unicode 码值的表达式。可以是常量、列或函数,以及任何算术或字符串运算符的组合。
相关函数
concat
将多个字符串连接在一起。
concat(str[, ..., str_n])参数
- str:要连接的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
- str_n:要连接的后续字符串表达式。
相关函数
concat_ws
使用指定的字符串连接多个字符串。
concat_ws(separator, str[, ..., str_n])参数
- separator:要插入在连接字符串之间的分隔符。
- str:要连接的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
- str_n:要连接的后续字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
相关函数
contains
如果字符串包含搜索字符串,则返回 true(区分大小写)。
contains(str, search_str)参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及任何运算符的组合。
- search_str:要在 str 中搜索的字符串。
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:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
相关函数
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)开始,要在字符串(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
返回字符串中,在指定数量(count)的定界符(delimiter)出现之前或之后(从左侧计数)或之后(从右侧计数)的子字符串。如果 count 为正,则函数返回最后一个定界符左侧的所有内容(从左侧计数)。如果 count 为负,则函数返回最后一个定界符右侧的所有内容(从右侧计数)。
substr_index(str, delimiter, count)参数
- str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
- delimiter:用于在字符串(
str)中分隔子字符串的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。 - count:用于分割的定界符(
delimiter)的第 N 个出现。可以是常量、列或函数,以及任何算术运算符的组合。支持正数和负数。
substring
substr 的别名。
substring_index
substr_index 的别名。
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 3 Core 和本文档提供反馈和错误报告。要获得支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。