傳回字元表達式的一部分,該部分從指定的位置開始,且具有指定的長度。 position 參數和 length 參數必須評估為整數。
語法
SUBSTRING(character_expression, position, length)
論點
character_expression
要擷取字元的字元運算式。
位置
這是指定子字串開始位置的整數。
長度
這是整數,指定子字串的長度做為字元數。
結果類型
DT_WSTR
備註
SUBSTRING 使用單一型索引。 如果 position 為 1,子字串會以 character_expression中的第一個字元開頭。
SUBSTRING 僅適用於DT_WSTR數據類型。 character_expression 參數 是字串常值或具有 DT_STR 數據類型的數據列時,會在 SUBSTRING 執行操作之前自動轉換為 DT_WSTR 數據類型。 其他資料類型必須明確地轉換為 DT_WSTR 資料類型。 如需詳細資訊,請參閱 Integration Services 資料類型和轉換 (SSIS 運算式)。
如果自變數為 null,SUBSTRING 會傳回 Null 結果。
表達式中的所有參數都可以使用變數和列。
length 自變數可以超過字串的長度。 在此情況下,函式會傳回字串的其餘部分。
表達式範例
這個範例會從字串文字中返回兩個字符,從第4個字符開始。 傳回結果為 「ph」。
SUBSTRING("elephant",4,2)
這個範例會從第四個字元開始,傳回字串的其餘部分。 傳回結果為 「phant」。 對於長度參數超過字串長度,這並不是一個錯誤。
SUBSTRING ("elephant",4,50)
本範例會從 MiddleName 數據行傳回第一個字母。
SUBSTRING(MiddleName,1,1)
這個範例會使用位置和長度自變數中的變數。 如果 Start 為 1 且 Length 為 5,則函式會傳回 Name 數據行中的前五個字元。
SUBSTRING(Name,@Start,@Length)
這個範例會從第六個字元開始傳回 PostalCode 變數的最後四個字元。
SUBSTRING (@PostalCode,6,4)
這個範例會從字串常量傳回長度為零的字串。
SUBSTRING ("Redmond",4,0)