文档文档

SQL 字符串函数

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

ascii

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

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

ascii(str)

参数

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

chr

查看 ascii 查询示例

bit_length

返回字符串的比特长度。

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

bit_length(str)

参数

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

length, octet_length

查看 bit_length 查询示例

btrim

从字符串的开头和结尾修剪指定的修剪字符串。如果未提供修剪字符串,则从输入字符串的开头和结尾删除所有空格。

btrim(str[, trim_str])

参数

  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。
  • trim_str:要从输入字符串的开头和结尾修剪的字符串表达式。可以是常量、列或函数,以及任何算术运算符的组合。默认为空格字符

ltrim, rtrim, trim

查看 btrim 查询示例

char_length

length 的别名。

character_length

length 的别名。

chr

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

chr(expression)

参数

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

ascii

查看 chr 查询示例

concat

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

concat(str[, ..., str_n])

参数

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

concat_ws

查看 concat 查询示例

concat_ws

使用指定的字符串连接多个字符串。

concat_ws(separator, str[, ..., str_n])

参数

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

concat

查看 concat_ws 查询示例

contains

如果字符串包含搜索字符串,则返回 true(区分大小写)。

contains(str, search_str)

参数

  • str:要操作的字符串表达式。可以是常量、列或函数,以及任何运算符的组合。
  • search_str:要在 str 中搜索的字符串。

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:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

lower, upper

查看 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_length, octet_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 查询示例

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:要操作的字符串表达式。可以是常量、列或函数,以及任何字符串运算符的组合。

btrim, ltrim, trim

查看 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)的定界符(delimiter)出现之前或之后(从左侧计数)或之后(从右侧计数)的子字符串。如果 count 为正,则函数返回最后一个定界符左侧的所有内容(从左侧计数)。如果 count 为负,则函数返回最后一个定界符右侧的所有内容(从右侧计数)。

substr_index(str, delimiter, count)

参数

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

查看 substr_index 查询示例

substring

substr 的别名。

substring_index

substr_index 的别名。

translate

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

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

查看 translate 查询示例

to_hex

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

to_hex(int)

参数

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

查看 to_hex 查询示例

trim

删除字符串开头和结尾的空格。

trim(str)

参数

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

btrim, ltrim, rtrim

查看 trim 查询示例

upper

将字符串转换为大写。

upper(str)

参数

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

initcap, lower

查看 upper 查询示例

uuid

为每一行返回一个唯一的 UUID v4 字符串值。

uuid()

查看 uuid 查询示例


此页面是否有帮助?

感谢您的反馈!


InfluxDB 3.8 新特性

InfluxDB 3.8 和 InfluxDB 3 Explorer 1.6 的主要增强功能。

查看博客文章

InfluxDB 3.8 现已适用于 Core 和 Enterprise 版本,同时发布了 InfluxDB 3 Explorer UI 的 1.6 版本。本次发布着重于操作成熟度,以及如何更轻松地部署、管理和可靠地运行 InfluxDB。

更多信息,请查看

InfluxDB Docker 的 latest 标签将指向 InfluxDB 3 Core

在 **2026 年 2 月 3 日**,InfluxDB Docker 镜像的 latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。

如果使用 Docker 来安装和运行 InfluxDB,latest 标签将指向 InfluxDB 3 Core。为避免意外升级,请在您的 Docker 部署中使用特定的版本标签。例如,如果使用 Docker 运行 InfluxDB v2,请将 latest 版本标签替换为 Docker pull 命令中的特定版本标签 — 例如

docker pull influxdb:2