文档

SQL 字符串函数

InfluxDB SQL 实现支持以下字符串函数用于操作字符串值

ascii

返回字符串中第一个字符的 ASCII 值。

ascii 返回一个 32 位整数。要在 InfluxDB 中使用,请将返回值转换为 64 位整数

ascii(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

chr

查看 ascii 查询示例

bit_length

返回字符串的位长度。

bit_length 返回一个 32 位整数。要在 InfluxDB 中使用,请将返回值转换为 64 位整数

bit_length(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

lengthoctet_length

查看 bit_length 查询示例

btrim

从字符串的开始和结束处删除指定的 trim 字符串。如果没有提供 trim 字符串,则从输入字符串的开始和结束处删除所有空白字符。

btrim(str[, trim_str])
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • trim_str:从输入字符串的开始和结束处进行裁剪的字符串表达式。可以是常量、列或函数,以及任何算术运算符的组合。默认为空白字符

ltrimrtrimtrim

查看 btrim 查询示例

char_length

length 的别名。

character_length

length 的别名。

concat

将多个字符串连接在一起。

concat(str[, ..., str_n])
参数
  • str:要连接的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • str_n:后续要连接的字符串表达式。

contcat_ws

查看 concat 查询示例

concat_ws

使用指定的分隔符将多个字符串连接在一起。

concat_ws(separator, str[, ..., str_n])
参数
  • separator:在连接的字符串之间插入的分隔符。
  • str:要连接的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • str_n:后续要连接的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

concat

查看 concat_ws 查询示例

chr

返回具有指定ASCII或Unicode代码值的字符。

chr(expression)

参数

  • expression:包含要操作的ASCII或Unicode代码值的表达式。可以是常量、列或函数,以及任何算术或字符串运算符的组合。

ascii

查看 chr 查询示例

ends_with

测试字符串是否以子字符串结尾。

ends_with(str, substr)
参数
  • str:要测试的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • substr:要测试的子字符串。

查看 ends_with 查询示例

find_in_set

返回字符串在以逗号分隔的子字符串列表中的位置。如果字符串不在子字符串列表中,则返回0。

find_in_set(str, strlist)
参数
  • str:要在 strlist 中查找的字符串表达式。
  • strlist:包含以逗号分隔的子字符串列表的字符串。

查看 find_in_set 查询示例

initcap

将输入字符串中每个单词的首字母大写。单词由非字母数字字符分隔。

initcap(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

lowerupper

查看 initcap 查询示例

instr

返回子字符串在字符串中首次出现的位置(从1开始)。如果子字符串不在字符串中,则函数返回0。

instr(str, substr)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • substr:要搜索的子字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

查看 instr 查询示例

left

返回字符串左侧的指定数量的字符。

left(str, n)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • n:要返回的字符数。

right

查看 left 查询示例

length

返回字符串中的字符数。

char_length 返回32位整数。要在 InfluxDB 中使用,将返回值转换为64位整数

length(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
别名
  • char_length
  • character_length

bit_lengthoctet_length

查看 length 查询示例

levenshtein

返回两个字符串之间的Levenshtein距离

levenshtein(str1, str2)
参数
  • str1:要操作的第一个字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。
  • str2:要操作的第二个字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。

查看 levenshtein 查询示例

lower

将字符串转换为小写。

lower(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

initcap, upper

查看 lower 查询示例

lpad

将另一个字符串填充到字符串的左侧,以达到指定的字符串长度。

lpad(str, n[, padding_str])
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • n:填充到的字符串长度。
  • padding_str:用于填充的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。默认为空格。

rpad

查看 lpad 查询示例

ltrim

从字符串中删除前导空格。

ltrim(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

btrim, rtrim, trim

查看 ltrim 查询示例

md5

计算字符串表达式的MD5 128位校验和。

md5(str)
参数
  • expression:要操作的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。

查看 md5 查询示例

octet_length

返回字符串的字节长度。

length 返回一个32位整数。要在InfluxDB中使用,请将返回值转换为64位整数

octet_length(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

bit_length, length

查看 octet_length 查询示例

overlay

使用指定的起始位置和要替换的字符数,用另一个子串替换字符串的一部分。

overlay(str PLACING substr FROM pos [FOR count])
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • substr:用于替换指定字符串(str)部分的子串。可以是常量、列或函数,以及任意组合的字符串运算符。
  • pos:子串替换的起始位置(substr)。
  • count:从起始位置(pos)开始替换的字符串(str)中的字符数。如果未指定,函数使用子串的长度。

查看 overlay 查询示例

position

返回子串在字符串中的位置。

position(substr IN str)
参数
  • substr:要搜索的子字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • str:要搜索的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。

查看 position 查询示例

repeat

返回一个字符串,其中输入字符串重复指定的次数。

repeat(str, n)
参数
  • str:要重复的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。
  • n:重复输入字符串的次数。

查看 repeat 查询示例

replace

将字符串中指定的子串替换为新子串的所有实例。

replace(str, substr, replacement)
参数
  • str:要重复的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。
  • substr:要在输入字符串中替换的子串表达式。可以是常量、列或函数,并可以使用任意组合的字符串运算符。
  • replacement:替换子串表达式。可以是常量、列或函数,并可以使用任意组合的字符串运算符。

查看replace查询示例

reverse

反转字符串的字符顺序。

reverse(str)
参数
  • str:要重复的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。

查看reverse查询示例

返回字符串右侧指定数量的字符。

right(str, n)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • n:要返回的字符数。

left

查看right查询示例

rpad

使用另一个字符串填充字符串右侧,直到指定长度。

rpad(str, n[, padding_str])
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • n:填充到的字符串长度。
  • padding_str:用于填充的字符串表达式。可以是常量、列或函数,以及任意组合的字符串运算符。默认为空格。

lpad

查看rpad查询示例

rtrim

从字符串中移除尾部空格。

rtrim(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

btrimltrimtrim

查看rtrim查询示例

split_part

基于指定的分隔符分割字符串,并返回指定位置的子串。

split_part(str, delimiter, pos)
参数
  • str:要分割的字符串表达式。可以是常量、列或函数,并可以使用任意组合的字符串运算符。
  • delimiter:要分割的字符串或字符。
  • pos:要返回的部分位置。

查看split_part查询示例

starts_with

检查字符串是否以子串开头。

starts_with(str, substr)
参数
  • str:要测试的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • substr:要测试的子字符串。

查看starts_with查询示例

strpos

返回指定子串在字符串中的起始位置。位置从1开始。如果子串在字符串中不存在,该函数返回0。

strpos返回32位整数。在使用InfluxDB时,将返回值转换为64位整数

strpos(str, substr)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • substr:要搜索的子字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

查看strpos查询示例

substr

从字符串的指定起始位置提取指定数量的字符的子串。

substr(str, start_pos[, length])
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • start_pos:开始提取子串的字符位置。字符串中的第一个字符位置为1。
  • length:要提取的字符数。如果没有指定,则返回起始位置之后的所有字符串。

查看substr查询示例

substr_index

返回在字符串中指定数量的分隔符(count)出现之前或之后的子串。如果计数为正,函数返回从左侧计数的最后一个分隔符之前的所有内容。如果计数为负,函数返回从右侧计数的最后一个分隔符之后的全部内容。

substr_index(str, delimiter, count)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • delimiter:用于在字符串(str)中分隔子串的字符串表达式。可以是常量、列或函数,并可以使用任意组合的字符串运算符。
  • count:要分割的分隔符(delimiter)的N次出现。可以是常量、列或函数,并可以使用任意组合的算术运算符。支持正数和负数。

查看substr_index查询示例

translate

将字符串中的字符转换为指定的转换字符。

translate(str, chars, translation)
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • chars:要转换的字符。
  • translation:转换字符。转换字符仅替换 chars 字符串中相同位置的字符。

查看 translate 查询示例

to_hex

将整数转换为十六进制字符串。

to_hex(int)
参数
  • int:要转换的整数表达式。可以是常量、列或函数,以及任何算术运算符的组合。

查看 to_hex 查询示例

trim

从字符串中删除前导和尾随空格。

trim(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

btrimltrimrtrim

查看 trim 查询示例

upper

将字符串转换为大写。

upper(str)
参数
  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

initcaplower

查看 upper 查询示例

uuid

返回一个UUID v4字符串值,每个行都是唯一的。

uuid()

查看 uuid 查询示例


这个页面有帮助吗?

感谢您的反馈!


Flux的未来

Flux将进入维护模式。您可以继续像现在一样使用它,无需对您的代码进行任何更改。

了解更多信息

InfluxDB v3增强功能和InfluxDB Clustered现已全面上市

新功能包括更快的查询性能和管理工具,这些工具推动了InfluxDB v3产品线的进步。InfluxDB Clustered现已全面上市。

InfluxDB v3性能和功能

InfluxDB v3产品线在查询性能方面取得了重大提升,并提供了新的管理工具。这些增强包括用于监控InfluxDB集群健康的操作仪表板、InfluxDB Cloud Dedicated中的单点登录(SSO)支持以及用于令牌和数据库的新管理API。

了解新的v3增强功能


InfluxDB Clustered全面上市

InfluxDB Clustered现已全面上市,为您在自管理的堆栈中提供InfluxDB v3的力量。

与我们谈谈InfluxDB Clustered