

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用「變更結構描述」重新映射資料屬性索引鍵
<a name="transforms-configure-applymapping"></a>

*變更結構描述*轉換會將來源資料屬性索引鍵重新映射到目標資料所需的設定。在「變更結構描述」轉換節點中，您可以：
+ 變更多個資料屬性索引鍵的名稱。
+ 變更資料屬性索引鍵的資料類型 (如果支援新的資料類型，且兩種資料類型之間有轉換路徑)。
+ 透過指示要捨棄的資料屬性索引鍵來選擇資料屬性索引鍵的子集。

也可以根據需要新增額外的*變更結構描述*節點至任務圖表，例如修改其他資料來源，或遵循*聯結*轉換。

## 使用具有小數資料類型的變更結構描述
<a name="transforms-configure-applymapping-decimal-datatype"></a>

 使用具有小數資料類型的**變更結構描述**轉換時，**變更結構描述**轉換會將精確度修改為預設值 (10,2)。若要修改此值並設定使用案例的精確度，可以使用 **SQL 查詢**轉換，並以特定精確度轉換資料欄。

 例如，如果您擁有名為「DecimalCol」的輸入資料欄類型 Decimal，並且您想要將其重新映射到名為「OutputDecimalCol」且特定精確度為 (18,6) 的輸出資料欄，則您應該：

1.  在**變更結構描述**轉換之後新增後續的 **SQL 查詢**轉換。

1.  在 **SQL 查詢**轉換中，使用 SQL 查詢將重新映射的資料欄轉換為所需的精確度。SQL 查詢如下所示：

   ```
   SELECT col1, col2, CAST(DecimalCol AS DECIMAL(18,6)) AS OutputDecimalCol
   FROM __THIS__
   ```

    在上述 SQL 查詢中：
   +  `col1` 和 `col2` 是資料中的其他資料欄，您想要在不修改的情況下對其進行傳遞。
   +  `DecimalCol` 是輸入資料的原始資料欄名稱。
   +  `CAST(DecimalCol AS DECIMAL(18，6))` 會將 `DecimalCol` 轉換為 Decimal 類型，精確度為 18 位數，小數位數為 6 位。
   +  `AS OutputDecimalCol` 會將轉換的資料欄重新命名為 `OutputDecimalCol`。

 透過使用 **SQL 查詢**轉換，可以覆寫**變更結構描述**轉換設定的預設精確度，並明確地將 Decimal 資料欄轉換為所需的精確度。此方法可讓您利用**變更結構描述**轉換來重新命名和重組資料，同時透過後續 **SQL 查詢**轉換處理 Decimal 資料欄的精確度要求。

## 將「變更結構描述」轉換新增至您的任務
<a name="transforms-configure-applymapping-add-to-job"></a>

**注意**  
**變更結構描述**轉換不區分大小寫。

**將「變更結構描述」轉換節點新增至您的任務圖表**

1. (選用) 根據需要開啟資源面板，然後選擇**變更結構描述**，將新轉換新增至您的任務圖表。

1. 在節點屬性面板中，輸入任務圖表中節點的名稱。如果尚未選取節點父項，請從**節點父項**清單選擇用作轉換之輸入來源的節點。

1. 選擇節點屬性面板中的**轉換**索引標籤。

1. 修改輸入結構描述：
   + 若要重新命名資料屬性索引鍵，請在**目標索引鍵**欄位中輸入索引鍵的新名稱。
   + 若要變更資料屬性索引鍵的資料類型，請從**資料類型**清單中為索引鍵選擇新的資料類型。
   + 若要從目標結構描述移除資料屬性索引鍵，請選擇該索引鍵的**捨棄**核取方塊。

1. (選用) 設定轉換節點屬性之後，您可以選擇節點詳細資訊面板中的**輸出結構描述**索引標籤來檢視資料的修改後結構描述。當您第一次針對任務中的任何節點選擇此索引標籤時，系統會提示您提供 IAM 角色以存取資料。如果您尚未在**任務詳細資訊**索引標籤上指定 IAM 角色，系統會提示您在此輸入 IAM 角色。

1. (選用) 設定節點屬性和轉換屬性之後，您可以選擇節點詳細資訊面板中的**資料預覽**索引標籤來預覽修改後的資料集。當您第一次針對任務中的任何節點選擇此索引標籤時，系統會提示您提供 IAM 角色以存取資料。使用此功能需支付相關費用，並且在您提供 IAM 角色後立即開始計費。