衍生的資料行轉換
更新: 2006 年 4 月 14 日
「衍生的資料行」轉換會將運算式套用至轉換輸入資料行,藉此建立新的資料行值。運算式可包含來自轉換輸入之變數、函數、運算子和資料行的任意組合。結果可加入作為新的資料行,或插入現有資料行作為取代值。「衍生的資料行」轉換可定義多個衍生的資料行,且任何變數或輸入資料行都可在多個運算式中出現。
您可以使用此轉換執行下列工作:
- 將不同資料行的資料串連至衍生的資料行中。例如,您可以藉由使用運算式
FirstName + " " + LastName
,將 FirstName 和 LastName 資料行的值結合到名為 FullName 的單一衍生資料行中。 - 使用如 SUBSTRING 的函數從字串資料擷取字元,然後將結果儲存到衍生的資料行中。例如,您可以使用運算式
SUBSTRING(FirstName,1,1)
,從 FirstName 資料行中擷取人員的名字縮寫。 - 套用數學函數至數值資料,然後將結果儲存到衍生的資料行中。例如,您可以使用運算式
ROUND(SalesTax, 2)
,將數值資料行 SalesTax 的長度和有效位數變更為含有兩位小數的數字。 - 建立比較輸入資料行和變數的運算式。例如,您可以使用運算式
ProductVersion == @Version? ProductVersion : @Version
,對照 ProductVersion 資料行中的資料比較變數 Version,並根據比較結果,使用 Version 或 ProductVersion 的值。 - 擷取日期時間值的部分。例如,您可以使用運算式
DATEPART("year",GETDATE())
,利用 GETDATE 和 DATEPART 函數擷取目前的年份。
您可以利用下列方式設定「衍生的資料行」轉換:
- 為每一個要變更的輸入資料行或新資料行提供運算式。如需詳細資訊,請參閱<Integration Services 運算式參考>。
附註: 如果運算式參考「衍生的資料行」轉換所覆寫的輸入資料行,則運算式會使用資料行的原始值,而非衍生的值。 - 若要將結果加入新資料行,請變更資料類型。如需詳細資訊,請參閱<Integration Services 資料類型>。
附註: 如果您要將資料衍生至日期或日期時間資料類型,即使地區設定偏好設定可能指定不同的格式,資料還是 ISO 格式。 - 若要將結果加入新資料行,請設定字串資料的資料行長度以及數值資料的有效位數和小數位數。如需詳細資訊,請參閱<有效位數、小數位數和長度 (Transact-SQL)>。
- 若要將結果加入新資料行,並且資料類型是 string,請指定字碼頁。如需詳細資訊,請參閱<比較字串資料>。
衍生的資料行轉換包括 FriendlyExpression 自訂屬性。屬性運算式可以在載入封裝時更新這個屬性。如需詳細資訊,請參閱<在封裝中使用屬性運算式>和<Transformation Custom Properties>。
這個轉換有一個輸入、一個規則輸出及一個錯誤輸出。
設定衍生的資料行轉換
您可以透過「SSIS 設計師」或以程式設計方式設定屬性。
如需有關 [衍生的資料行轉換編輯器] 對話方塊中可設定屬性的詳細資訊,請參閱<衍生的資料行轉換編輯器>。
[進階編輯器] 對話方塊會反映能以程式設計的方式設定之屬性。如需有關可以在 [進階編輯器] 對話方塊中或以程式設計方式設定之屬性的詳細資訊,請按下列其中一個主題:
如需有關如何設定屬性的詳細資訊,請按下列其中一個主題:
請參閱
概念
建立封裝資料流程
Integration Services 轉換
說明及資訊
變更歷程記錄
版本 | 歷程記錄 |
---|---|
2006 年 4 月 14 日 |
|
2005 年 12 月 5 日 |
|