共用方式為


衍生的資料行轉換

「衍生的資料行」轉換會將運算式套用至轉換輸入資料行,藉此建立新的資料行值。運算式可包含來自轉換輸入之變數、函數、運算子和資料行的任意組合。結果可加入做為新的資料行,或插入現有資料行做為取代值。「衍生的資料行」轉換可定義多個衍生的資料行,且任何變數或輸入資料行都可在多個運算式中出現。

您可以使用此轉換執行下列工作:

  • 將不同資料行的資料串連至衍生的資料行中。例如,您可以藉由使用運算式 FirstName + " " + LastName,將 FirstNameLastName 資料行的值結合到名為 FullName 的單一衍生資料行中。

  • 使用如 SUBSTRING 的函數從字串資料擷取字元,然後將結果儲存到衍生的資料行中。例如,您可以使用運算式 SUBSTRING(FirstName,1,1),從 FirstName 資料行中擷取人員的名字縮寫。

  • 套用數學函數至數值資料,然後將結果儲存到衍生的資料行中。例如,您可以使用運算式 ROUND(SalesTax, 2),將數值資料行 SalesTax 的長度和有效位數變更為含有兩位小數的數字。

  • 建立比較輸入資料行和變數的運算式。例如,您可以使用運算式 ProductVersion == @Version? ProductVersion : @Version,對照 ProductVersion 資料行中的資料比較變數 Version,並根據比較結果,使用 VersionProductVersion 的值。

  • 擷取日期時間值的部分。例如,您可以使用運算式 DATEPART("year",GETDATE()),利用 GETDATE 和 DATEPART 函數擷取目前的年份。

您可以利用下列方式設定「衍生的資料行」轉換:

  • 為每一個要變更的輸入資料行或新資料行提供運算式。如需詳細資訊,請參閱<Integration Services 運算式參考>。

    [!附註]

    如果運算式參考「衍生的資料行」轉換所覆寫的輸入資料行,則運算式會使用資料行的原始值,而非衍生的值。

  • 若要將結果加入新資料行,並且資料類型是 string,請指定字碼頁。如需詳細資訊,請參閱<比較字串資料>。

衍生的資料行轉換包括 FriendlyExpression 自訂屬性。屬性運算式可以在載入封裝時更新這個屬性。如需詳細資訊,請參閱<在封裝中使用屬性運算式>和<轉換自訂屬性>。

這個轉換有一個輸入、一個規則輸出及一個錯誤輸出。

設定衍生的資料行轉換

您可以透過「SSIS 設計師」或以程式設計方式設定屬性。

如需有關 [衍生的資料行轉換編輯器] 對話方塊中可設定屬性的詳細資訊,請參閱<衍生的資料行轉換編輯器>。

[進階編輯器] 對話方塊會反映能以程式設計的方式設定之屬性。如需有關可以在 [進階編輯器] 對話方塊中或利用程式設定之屬性的詳細資訊,請按一下下列主題之一:

如需有關如何設定屬性的詳細資訊,請按下列其中一項主題:

外部資源

social.technet.microsoft.com 上的技術文章:SSIS 運算式範例

Integration Services 圖示 (小) 掌握 Integration Services 的最新狀態

若要取得 Microsoft 的最新下載、文章、範例、影片,以及社群的精選解決方案,請瀏覽 MSDN 或 TechNet 上的 Integration Services 頁面:

若要得到這些更新的自動通知,請訂閱該頁面上所提供的 RSS 摘要。