---
articleId: 81d0589f-7f9d-40b2-b250-4029a91ff156
slug: template-etl
title: テンプレートETL
parentCategoryId: 174cb02c-5c50-4a3e-9be5-14449bc7837b
languageCode: ja
---
## 概要
転送設定の**STEP2 詳細設定**で設定できるテンプレートETLの各項目について説明するDocsです。
## カラム定義
STEP1で設定した転送元から取得したデータから、列の絞り込みや追加を行い、転送する列を指定します。
元カラムに対して、以下の変更が可能です。
- カラム名
- データ型
- デフォルト値
- 日時フォーマット(日時データの場合)
転送元のカラムに変更があった場合は、**カラム定義を再読み込み**をクリックすることで最新の定義に更新できます。
詳しくは、[カラム定義を再読み込み](/docs/reload-column-definitions)を参照ください。
{height="" width=""}
### JSONカラムを展開
転送元から取得してきたデータのうちフィールドにJSON型の値が格納されている場合、カラム定義の中で**JSONカラムを展開**を選択できます。
JSONに格納されているデータに対して、カラム名・JSONパス・データ型・日付フォーマット・タイムゾーンを指定することによって、カラムとして展開します。
展開後のカラム名は、他のカラム名と重複しないユニークな値を入力してください。
{height="" width=""}
なお、JSON内に配列が含まれている場合の値の取得については、[転送元カラムのJSONに配列が含まれていた際、要素を指定して値を取得する方法](https://help.trocco.io/hc/ja/articles/4782144187294-%E8%BB%A2%E9%80%81%E5%85%83%E3%82%AB%E3%83%A9%E3%83%A0%E3%81%AEJSON%E3%81%AB%E9%85%8D%E5%88%97%E3%81%8C%E5%90%AB%E3%81%BE%E3%82%8C%E3%81%A6%E3%81%84%E3%81%9F%E9%9A%9B-%E8%A6%81%E7%B4%A0%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%A6%E5%80%A4%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%82%92%E6%95%99%E3%81%88%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84)を参照ください。
### カラム名・データ型の一括変換
選択したカラムの命名規則、およびデータ型を一括で変換できます。
各カラム左側にあるチェックボックスを選択し、**一括変換**をクリックすると、一括変換のためのダイアログが表示されます。
{height="" width=""}
なお、データ型の変換は、以下の型の変換に対応しています。
* STRING型
* LONG型
* TIMESTAMP型
* DOUBLE型
* BOOLEAN型
* JSON型
#### カラム名規則の変換
以下の4種類から選択できます。
|変換形式|変換例|概要|
|---|---|---|
|大文字変換|`AccountId` -> `ACCOUNTID`
`account_id` -> `ACCOUNT_ID`|小文字を大文字に変換します。
ハイフン(`-`)やアンダースコア(`_`)といった記号文字は維持されます。|
|スネークケース(snake_case)変換|`AccountId` -> `account_id`
`account id` -> `account_id`|キャメルケースをスネークケースに変換します。
大文字はすべて**小文字に変換されます。**
なお、半角スペースもアンダースコア(`_`)に変換されます。|
|アッパースネークケース(UPPER_SNAKE_CASE)変換|`AccountId` -> `ACCOUNT_ID`
`account id` -> `ACCOUNT_ID`|キャメルケースをスネークケースに変換します。
小文字はすべて**大文字に変換されます。**
なお、半角スペースもアンダースコア(`_`)に変換されます。|
|サニタイズ(Google BigQueryカラム名互換)変換|`account.id`-> `account_id`
`account id` -> `account_id`|Google BigQueryのカラム名規則に即した形で変換します。
ドット(`.`)やハイフン(`-`)といった記号文字および半角スペースは、アンダースコア(`_`)に変換されます。
なお、日本語などのマルチバイト文字もアンダースコア(`_`)に変換されます。ご注意ください。|
## フィルター設定
データの行を絞り込むための条件を、**AND条件**か**OR条件**で設定します。
対象カラム名とフィルター値を指定し、対象カラムの値が条件に一致する行のみ転送できます。
以下の演算子を選択できます。
- `>`:対象カラムの値がフィルター値**より大きい**行
- `>=`:対象カラムの値がフィルター値**以上**の行
- `<`:対象カラムの値がフィルター値**未満**の行
- `<=`:対象カラムの値がフィルター値**以下**の行
- `==`:対象カラムの値がフィルター値と**等しい**行
- `!=`:対象カラムの値がフィルター値と**異なる**行
- `start_with`:対象カラムの値がフィルター値の**文字列から始まる**行
- `end_with`:対象カラムの値がフィルター値の**文字列で終わる**行
- `include`:対象カラムの値がフィルター値の**文字列を含む**行
- `IS NULL`:対象カラムの値が**NULLである**行
- `IS NOT NULL`:対象カラムの値が**NULLでない**行
- `REGEXP`:対象カラムの値がフィルター値の**正規表現にパターンマッチする**行
{height="" width=""}
## マスキング設定
指定したフィールドの指定した部分を `*` で置換します。
個人情報など元データのまま転送したくない列を、マスキングした状態で転送できます。
マスキングのタイプは4種類あり、それぞれ以下の通りです。
| タイプ | 説明 |
| --- | --- |
| 全文字列 | すべて `*` で置換します。 |
| メールアドレス | @マークまでを `*` で置換します。 |
| 正規表現 | 正規表現パターンにマッチした箇所を `*` で置換します。 |
| 部分文字列 | 開始位置・終了位置を指定して、`*` で置換します。 |
{height="" width=""}
## 転送日時カラム設定
転送ジョブ実行の開始日時を記録するカラムを追加する場合に設定します。
転送ジョブを実行した日時によるパーティショニングやシャーディングテーブル化をする場合にご利用ください。
転送日時カラムを追加する場合は、**転送日時カラムの追加**にチェックを入れて、下記項目で出力形式を指定してください。

| 項目名 | 説明 |
| --- | --- |
| 追加するカラム名 | 転送日時を出力するカラム名を入力します。 |
| データ型 | データ型を以下から選択します。
timestampstringEtc/UTCAsia/Tokyo