返回以指定的起始索引和指定的最大長度中的 char 開頭的子字串。

引數:

  1. 人物表達。字元表示式可以是任何可以隱式轉換為 varcharnvarchar 的資料型別,但 textntext 除外。
  2. 開始索引。一個數字(intbigint),它指定所請求的子字串的起始索引。 ( 注意: sql server 中的字串是 base 1 索引,這意味著字串的第一個字元是索引 1)。此數字可以小於 1.在這種情況下,如果起始索引和最大長度之和大於 0,則返回字串將是從字元表示式的第一個字元開始並且長度為(起始索引)的字串+最大長度 - 1)。如果小於 0,則返回空字串。
  3. 最長長度。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 ''