建立規則以轉換資料集 | Qlik Cloud 說明
跳到主要內容 跳至補充內容

建立規則以轉換資料集

您可以建立可重複使用的轉換規則,以在 複製暫存儲存轉換,資料市集 資料工作中對資料集執行全域轉換。

資訊備註由於 結構描述演進,新增至工作中的資料集和資料行不支援全域轉換。

選取 資料集,按一下 轉換規則,然後按一下 新增轉換規則 以建立新的轉換規則。

  1. 選取轉換類型,然後按一下 下一步

    您可以執行下列轉換:

    • 重新命名資料集

    • 覆寫資料訊息發佈

      資訊備註
      • 僅適用於 Kafka 目標。

      • 如果您使用的是 Data Movement gateway (內部部署 Kafka 所需),則需要 2025.5.40 或更新版本。

    • 重新命名資料行

    • 新增資料行

    • 捨棄資料行

    • 轉換資料類型

    • 取代資料行值

  2. 選取轉換範圍,然後按一下 下一步

  3. 選取要執行的轉換動作,然後按一下 下一步

  4. 為規則新增名稱和說明,然後按一下 完成

該規則將在您執行資料工作時套用。如果您新增多個規則,規則將依其列出的順序執行。

提示備註您可以在規則的運算式中使用變數 (例如資料行名稱)。如需詳細資訊,請參閱 在運算式中包含中介資料

轉換範圍

當多個轉換套用至相同的資料集或資料行時,範圍一律在原始來源名稱上,而動作則與套用前一個規則後的值相關。例如,如果您有以下規則:

  1. 重新命名所有開頭為 Abc_ (Abc_%) 的資料集,將字首變更為 ABC_

  2. 將字尾 _zzz 新增至開頭為 ABC_ (ABC_%) 的資料集。

將規則套用至這些資料集將會提供這些結果。請注意,在第二個規則之後,字尾 _zzz 不會新增至 ABC_customers,因為範圍一律在原始名稱 (Abc_customers) 上。

原始資料集名稱 規則 1 之後的資料集名稱 規則 2 之後的資料集名稱

Abc_customers

ABC_customers

ABC_customers

ABC_Suppliers

ABC_Suppliers

ABC_Suppliers_zzz

重新命名資料集

  1. 選取 重新命名資料集,然後按一下 下一步

  2. 設定轉換範圍,即要重新命名的資料集。您可以使用 % 作為萬用字元,從一個或多個資料資產中選取多個資料集。

    按一下 下一步

  3. 設定轉換動作。您可以執行下列動作:

    • 將資料集重新命名為固定名稱。

    • 新增字首或字尾。

    • 移除字首或字尾。

    • 取代字首或字尾。

    • 將大小寫變更為小寫或大寫。

    • 使用運算式取代資料集名稱。

    • 使用字典取代資料集名稱。

      如需詳細資訊,請參閱 使用字典重新命名資料集或資料行

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

自訂資料訊息發佈

資訊備註僅適用於 Kafka 目標。
  1. 選取 自訂資料訊息發佈,然後按一下 下一步

  2. 設定轉換範圍,即要覆寫其資料訊息發佈設定的資料集。您可以使用 % 作為萬用字元,從一個或多個資料資產中選取多個資料集。

    按一下 下一步

  3. 設定轉換動作。

    對於每個設定,目前的任務設定會由欄位任務設定: <設定>指示 (例如,任務設定: 特定主題)。

    如需這些設定的說明,請參閱資料訊息發佈

    您可以保留任務設定,或使用「運算式建置器」來指定自訂主題、訊息金鑰或分割區金鑰。

    資訊備註這些設定將會覆寫任務設定,但不會覆寫為個別資料集設定的設定。

    若要使用「運算式建置器」:

    1. 視需要選取自訂主題自訂訊息金鑰自訂分割區金鑰欄位,然後按一下運算式圖示

      資訊備註自訂主題必須已經存在或代理程式必須設定為建立主題。

      即開啟運算式建立器。

    2. 建置運算式。

      您可以使用函數、運算子和中繼資料來建立運算式。

      按一下 向右鍵圖示 可將項目移至運算式。

      您也可以將 Kafka 支援的所有函數使用在運算式中。

    3. 按一下擷取參數

      現在,您可為所有參數新增測試值到要測試的值

    4. 按一下測試運算式

      即顯示使用測試值的運算式執行結果。

    5. 準備就緒後,按一下確定

      運算式已新增至欄位。

    建置運算式

    您需要建置運算式,以定義自訂值。您可使用:

    • 函數

      字串函數、數值函數、Null 檢查函數、資料與時間函數,及邏輯函數。

    • 運算子

      數學與邏輯運算子。部分運算子也在運算式上方的工具列中提供使用。字串串連 || 的運算子也可在此找到。

    • 中繼資料

      下列中繼資料可供使用:

      • $Q_M_SCHEMA_NAME
      • $Q_M_SOURCE_SCHEMA_NAME
      • $Q_M_SOURCE_TABLE_NAME
      • $Q_M_TABLE_NAME

    按一下 向右鍵圖示 可將項目移至運算式。

    也可將 Kafka 支援的所有函數使用在運算式中。

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

重新命名資料行

  1. 選取 重新命名資料行,然後按一下 下一步

  2. 設定轉換範圍,即要重新命名的資料行。您可以使用 % 作為萬用字元,從一個或多個資料工作和資料集中選取多個資料行。

    您也可以將動作限制在特定資料類型。將資料類型設定為 未指定,以對所有符合的資料行執行動作,不論資料類型為何。

    按一下 下一步

    您也可以將範圍限制在作為索引鍵或可為 Null 的資料行。

  3. 設定轉換動作。您可以執行下列動作:

    • 將資料行重新命名為固定名稱。

    • 新增字首或字尾。

    • 移除字首或字尾。

    • 取代字首或字尾。

    • 將資料行大小寫變更為小寫或大寫。

    • 使用運算式取代資料行名稱。

    • 使用字典取代資料行名稱。

      如需詳細資訊,請參閱 使用字典重新命名資料集或資料行

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

新增資料行

  1. 選取 新增資料行,然後按一下 下一步

  2. 設定轉換範圍,即要將資料行新增至哪個資料集。您可以使用 % 作為萬用字元,將資料行新增至一個或多個資料集。

    按一下 下一步

  3. 設定新資料行的詳細資訊:

    • 資料行名稱

    • 使用運算式產生器設定資料行的

    • 選取 新增至主索引鍵 以將此資料行用作主索引鍵。

    • 目標資料類型 中設定資料類型。

    • 如果資料類型為 BYTESSTRINGWSTRING,也請指定 長度

      如果資料類型為 NUMERIC,也請指定 精確度小數位數

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

捨棄資料行

  1. 選取 捨棄資料行,然後按一下 下一步

  2. 設定轉換範圍,即要捨棄的資料行。您可以使用 % 作為萬用字元,從一個或多個資料資產和資料集中選取多個資料行。

    您也可以將動作限制在特定資料類型。將資料類型設定為 未指定,以對所有符合的資料行執行動作,不論資料類型為何。

    按一下 下一步

    您也可以將範圍限制在作為索引鍵或可為 Null 的資料行。

  3. 設定規則的名稱,然後按一下 完成

轉換資料類型

  1. 選取 轉換資料類型,然後按一下 下一步

  2. 設定轉換範圍,即要轉換資料類型的資料行。您可以使用 % 作為萬用字元,從一個或多個資料資產和資料集中選取多個資料行。

    您也可以將動作限制在特定資料類型。將資料類型設定為 未指定,以對所有符合的資料行執行動作,不論資料類型為何。

    按一下 下一步

    您也可以將範圍限制在作為索引鍵或可為 Null 的資料行。

  3. 設定轉換動作。

    • 目標資料類型 設定為要轉換成的資料類型。

    • 如果資料類型為 BYTESSTRINGWSTRING,也請指定 長度

      如果資料類型為 NUMERIC,也請指定 精確度小數位數

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

請參閱:管理資料類型

取代資料行值

  1. 選取 取代資料行值,然後按一下 下一步

  2. 設定轉換範圍,即要取代其值的資料行。您可以使用 % 作為萬用字元,從一個或多個資料資產和資料集中選取多個資料行。

    您也可以將動作限制在特定資料類型。將資料類型設定為 未指定,以對所有符合的資料行執行動作,不論資料類型為何。

    按一下 下一步

    您也可以將範圍限制在作為索引鍵或可為 Null 的資料行。

  3. 設定轉換動作。

    • 設定運算式以在 目標值 中定義取代值。

    • 目標資料類型 設定為已取代資料行的資料類型。

    • 如果資料類型為 BYTESSTRINGWSTRING,也請指定 長度

      如果資料類型為 NUMERIC,也請指定 精確度小數位數

    準備就緒後,按一下 下一步

  4. 設定規則的名稱,然後按一下 完成

使用字典重新命名資料集或資料行

您可以使用字典來重新命名資料集或資料行。當您處理大量使用神秘命名慣例的物件時,這非常有用。您可以在字典編輯器中新增翻譯,或匯入包含翻譯的 CSV 檔案。您也可以將字典匯出為 CSV 檔案,並在另一個資料資產中重複使用。

當您選取 重新命名資料集重新命名資料行 時,可以在 轉換動作 中使用 依字典重新命名。按一下 書籍 以開啟字典編輯器。

  • 按一下 新增翻譯 並填寫 來源名稱翻譯名稱,以將翻譯新增至字典。

建立所需的翻譯後,按一下 確定 以關閉字典編輯器。

資訊備註只有在與字典中的來源名稱完全相符時,才會取代該名稱。不支援部分相符。

匯入翻譯

您可以從包含字典的 CSV 檔案匯入翻譯。該檔案應每列包含一個翻譯。範例:

sourcename1,translatedname1 sourcename2,translatedname2 sourcename3,translatedname3
  • 按一下 從 CSV 附加 並選取要匯入的 CSV 檔案。

匯入字典中的翻譯會附加至您的字典。

匯出翻譯

您可以將字典匯出為 CSV 檔案,以便在其他資料資產中重複使用。

  • 按一下 匯出至 CSV

字典已匯出為 CSV 檔案。

在運算式中包含中介資料

運算式編輯器中的 中介資料 索引標籤包含下列變數,您可以在轉換規則的運算式中使用這些變數。

資訊備註在資料移動期間,原始來源資料類型會先對應至 Qlik Talend Data Integration 資料類型,然後再選擇性地進行轉換並對應至目標。例如,MySQL 中的 BIT 資料類型會對應至 Qlik Talend Data Integration 中的 BOOLEAN 資料類型。因此,名稱中包含 DATATYPE 的變數是指 Qlik Talend Data Integration 資料類型或轉換後的資料類型,而不是原始來源資料類型。
可用於轉換規則的變數
變數 說明

$Q_D_COLUMN_DATA

來源資料表中的資料行值。

$Q_M_COLUMN_NAME

修改後的資料行名稱。

$Q_M_DATATYPE_LENGTH

修改後的資料行資料類型長度。

$Q_M_DATATYPE_NAME

修改後的資料行資料類型。

$Q_M_DATATYPE_PRECISION

修改後的資料行資料類型精確度。

$Q_M_DATATYPE_SCALE

修改後的資料行資料類型小數位數。

$Q_M_SCHEMA_NAME

來源結構描述的名稱。

$Q_M_SOURCE_COLUMN_NAME

來源資料表中的資料行名稱。

$Q_M_SOURCE_DATATYPE_LENGTH

來源資料表中資料行的資料類型長度。
$Q_M_SOURCE_DATATYPE_NAME 來源資料表中資料行的資料類型。

$Q_M_SOURCE_DATATYPE_PRECISION

來源資料表中資料行的資料類型精確度。

$Q_M_SOURCE_DATATYPE_SCALE

來源資料表中資料行的資料類型小數位數。

$Q_M_SOURCE_TABLE_NAME

來源資料表的名稱。

$Q_M_TABLE_NAME

修改後的來源資料表名稱。

您可以使用下列運算式重新命名轉換範圍內的所有資料表,以將結構描述名稱新增為字首:

${Q_M_SCHEMA_NAME}||'.'||${Q_M_SOURCE_TABLE_NAME}.

例如,這會將 dwprod 結構描述中的資料表 products 重新命名為 dwprod.products

管理規則

您可以在 規則 窗格中管理規則。

  • 按一下 規則

您可以啟用/停用規則、刪除規則以及編輯規則。

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們!