Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » UltraLite - 数据库管理和参考 » UltraLite SQL 参考 » UltraLite SQL 函数 » SQL 函数 (P-Z)

 

SUBSTRING 函数 [String]

返回字符串的子串。

语法
{ SUBSTRING | SUBSTR } ( string-expression, start 
[, length ] )
参数
  • string-expression   从中返回子串的字符串。

  • start   要返回的子串的开始位置(以字符为单位)。

  • length   要返回的子串的长度(以字符为单位)。如果指定了 length,便将子串限制为不能超过该长度。

返回值

LONG BINARY

LONG VARCHAR

LONG NVARCHAR

注释

在 UltraLite 中,数据库不具有 ansi_substring 选项,但 SUBSTR 函数的行为方式与将 ansi_substring 缺省设置为 on 一样。此函数的行为与 ANSI/ISO SQL/2003 的行为相同:

  • Start 值   字符串中的第一个字符处于位置 1。对负或零起始偏移的处理方法是:将其当作在字符串左侧填充了非字符。

  • Length 值   正的 length 指定子串在开始位置右侧第 length 个字符处结束。

    负的 length 会返回错误。

    length 为零时会返回空字符串。

如果 string-expression 是二进制数据类型,则 SUBSTRING 函数的行为与 BYTE_SUBSTR 相同。

要获取字符串尾端的字符,应使用 RIGHT 函数。

如果输入字符串使用字符长度语义,就会在可能的情况下根据字符长度语义对返回值进行说明。

另请参见
标准和兼容性
  • SQL/2003   核心特性。

示例

下表显示了 SUBSTRING 函数返回的值。

示例 结果
SUBSTRING( 'front yard', 1, 4 ) fron
SUBSTRING( 'back yard', 6, 4 ) yard
SUBSTR( 'abcdefgh', 0, -2 ) 返回错误
SUBSTR( 'abcdefgh', -2, 2 ) 返回空字符串