【ORACLE】substr() 函数

在 Oracle 数据库中,SUBSTR() 函数用于从字符串中提取子字符串。这个函数非常灵活,可以根据不同的需求提取字符串的不同部分。

函数语法

SUBSTR() 函数的基本语法如下:

SUBSTR(string, start, length)
  • string:要提取子字符串的原始字符串。
  • start:子字符串开始的位置(基于 1 的索引)。如果 start 是正数,则表示从字符串的开头开始计算;如果是负数,则表示从字符串的末尾开始计算。
  • length:要提取的子字符串的长度。如果省略此参数,SUBSTR() 将从 start 位置开始提取直到字符串的末尾。

示例

  1. 提取从第 1 个字符开始的 5 个字符:
SELECT SUBSTR('Hello World', 1, 5) FROM dual;

结果:Hello

  1. 提取从第 7 个字符开始的子字符串(不指定长度):
SELECT SUBSTR('Hello World', 7) FROM dual;

结果:World

  1. 提取从字符串末尾开始的前 3 个字符:
SELECT SUBSTR('Hello World', -3) FROM dual;

结果:rld

注意事项

  • 如果 start 大于字符串的长度,SUBSTR() 将返回一个空字符串。
  • 如果 length 是负数,Oracle 将返回一个错误。
  • SUBSTR() 函数在处理 NULL 值时,如果任何一个参数是 NULL,那么返回的结果也将是 NULL

SUBSTR() 函数在字符串处理中非常有用,无论是在 SQL 查询中还是在 PL/SQL 程序中,都可以用于提取字符串的一部分,进行进一步的处理或显示。

你可能感兴趣的:(数据库,oracle,数据库)