子
返回以指定的起始索引和指定的最大长度中的 char 开头的子字符串。
参数:
- 人物表达。字符表达式可以是任何可以隐式转换为
varchar
或nvarchar
的数据类型,但text
或ntext
除外。 - 开始索引。一个数字(
int
或bigint
),它指定所请求的子字符串的起始索引。 ( 注意: sql server 中的字符串是 base 1 索引,这意味着字符串的第一个字符是索引 1)。此数字可以小于 1.在这种情况下,如果起始索引和最大长度之和大于 0,则返回字符串将是从字符表达式的第一个字符开始并且长度为(起始索引)的字符串+最大长度 - 1)。如果小于 0,则返回空字符串。 - 最长长度。0 到
bigint
最大值之间的整数(9,223,372,036,854,775,807)。如果 max length 参数为负,则会引发错误。
SELECT SUBSTRING('This is my string', 6, 5) -- returns 'is my'
如果 max length + start index 大于字符串中的字符数,则返回 entier 字符串。
SELECT SUBSTRING('Hello World',1,100) -- returns 'Hello World'
如果起始索引大于字符串中的字符数,则返回空字符串。
SELECT SUBSTRING('Hello World',15,10) -- returns ''