SUBSTR 函数

功能描述

SUBSTR 函数用于从字符串或二进制数据中提取指定位置和长度的子字符串。

语法

SUBSTR(str, pos [, len])

或者

SUBSTR(str FROM pos [FOR len])

参数说明

  • str
    str
    (string/binary): 输入的字符串或二进制数据。
  • pos
    pos
    (bigint): 子字符串的起始位置。如果
    pos
    pos
    大于等于 1,则从左侧第
    pos
    pos
    个字符开始提取;如果
    pos
    pos
    小于等于 -1,则从右侧第
    -pos
    -pos
    个字符开始提取;如果
    pos
    pos
    等于 0,则从左侧第一个字符开始提取。
  • len
    len
    (bigint, 可选): 要提取的子字符串长度。如果未指定,则返回从
    pos
    pos
    开始的完整子字符串。

返回结果

返回提取的子字符串,类型为 string。

使用示例

  1. 提取字符串 "Hello, world!" 从第二个字符开始的 5 个字符:

    SELECT SUBSTR('Hello, world!', 2, 5); -- 输出结果: ello,

  2. 提取字符串 "123456789" 从第四个字符开始的所有字符:

    SELECT SUBSTR('123456789', 4); -- 输出结果: 456789

  3. 提取字符串 "数据库" 从第二个字符开始的 1 个字符,并指定字符集为 UTF-8:

    SELECT SUBSTR('数据库' FROM 2 FOR 1 ); -- 输出结果: 据

注意事项

  • 如果
    pos
    pos
    len
    len
    的值超出输入字符串的范围,函数将返回一个空字符串。
  • 当提取字符串时,
    pos
    pos
    len
    len
    的单位是字符,而不是字节。

联系我们
预约咨询
微信咨询
电话咨询