各ファイルのスキーマが同じかどうかによって異なります。
想定ケースごとの対処法をご紹介いたします。
スキーマを統一できるケース
全てのファイルのスキーマが同じ場合
1つの転送設定にてまとめて転送可能です。
異なるスキーマのファイルが含まれる場合
転送設定STEP1の解凍後の相対パス (正規表現)にスキーマが同じファイルのみ対象となるよう設定します。スキーマが同じファイルごとに転送設定を分けて作成することで、スキーマごとにまとめて転送可能です。
スキーマに差異があるケース
原則として、スキーマが異なる場合は転送設定を分けていただくことを推奨しております。設定次第でまとめて転送することは可能ですが、想定と異なるデータとなる可能性がございます。転送設定を分けることが難しい場合の対処法としてご検討ください。
なお、ファイル転送では、各ファイルの「カラムの位置(何列目か)」に基づいて同じカラムとして処理されます。カラム名が考慮されない点についてもご留意ください。
各ファイルのカラム数が異なる場合
カラム数が異なるファイルが含まれる場合、データのプレビューや転送を実行した際にtoo many columnsやtoo few columnsというエラーが発生します。オプションを設定することで、まとめて転送可能です。
カラム数が少ないファイルを含む場合
転送設定STEP2の入力オプションにあるカラム数が減っている行の処理に、「足りないカラムをNULL補完する」を選択します。1列目からカラムをカウントし、カラムが足りなかった場合には自動的にNULLが補完されます。
▼例
ファイル①には、Date、Product、Amount、Storeという4つのカラムがあります。
| Date | Product | Amount | Store |
| 2023-09-01 | ぶどう | 350 | 東京 |
| 2023-09-02 | もも | 200 | 大阪 |
| 2023-09-03 | メロン | 500 | 博多 |
ファイル②には、Data、Product、Amountの3つのカラムはありますが、Storeのカラムがありません。
| Date | Product | Amount |
| 2023-09-04 | りんご | 150 |
| 2023-09-05 | みかん | 100 |
| 2023-09-06 | バナナ | 200 |
「足りないカラムをNULL補完する」のオプションを選択して転送を行うと、転送先でファイル②のレコードのStoreカラムにはNULLが補完されます。
| Date | Product | Amount | Store |
| 2023-09-01 | ぶどう | 350 | 東京 |
| 2023-09-02 | もも | 200 | 大阪 |
| 2023-09-03 | メロン | 500 | 博多 |
| 2023-09-04 | りんご | 150 | NULL |
| 2023-09-05 | みかん | 100 | NULL |
| 2023-09-06 | バナナ | 200 | NULL |
カラム数が多いファイルを含む場合
転送設定STEP2の入力オプションにあるカラム数が増えている行の処理に、「カラムを無視して処理」を選択します。1列目からカラムをカウントし、あふれたカラムは無視して転送されます。
▼例
ファイル①には、Date、Product、Amountという3つのカラムがあります。
| Date | Product | Amount |
| 2023-10-01 | りんご | 150 |
| 2023-10-02 | みかん | 100 |
| 2023-10-03 | バナナ | 200 |
ファイル②には、ファイル①と同じカラムのほかに、4つ目にStoreのカラムがあります。
| Date | Product | Amount | Store |
| 2023-10-04 | ぶどう | 350 | 東京 |
| 2023-10-05 | もも | 200 | 大阪 |
| 2023-10-06 | メロン | 500 | 博多 |
「カラムを無視して処理」のオプションを有効にして転送を行うと、ファイル②の4つ目のカラムは転送されず、転送先には3つのカラムのみとなります。
| Date | Product | Amount |
| 2023-10-01 | りんご | 150 |
| 2023-10-02 | みかん | 100 |
| 2023-10-03 | バナナ | 200 |
| 2023-10-04 | ぶどう | 350 |
| 2023-10-05 | もも | 200 |
| 2023-10-06 | メロン | 500 |
各ファイルのカラム名やデータ型が異なる場合
各ファイルのカラムの位置によって同じカラムとして扱うため、カラム名は一致している必要はありません。 同じ位置にあるカラムのデータ型が異なる場合は、転送設定STEP2のカラム定義にて、両方の値を格納できる共通のデータ型(例:文字列型)を設定することで、まとめて転送可能です。
▼例
ファイル①には、ProductID、Name、Priceという3つのカラムがあります。ProductIDカラムは数値型となっています。
| ProductID | Name | Price |
| 1001 | りんご | 150 |
| 1002 | みかん | 100 |
| 1003 | バナナ | 200 |
ファイル②には、IItemCode、Name、Priceという3つのカラムがあります。ItemCodeカラムは文字列型となっています。
| ItemCode | Name | Price |
| A-201 | ぶどう | 350 |
| A-202 | もも | 200 |
| B-105 | メロン | 500 |
ファイルをまとめて転送する場合、ファイル①のProductIDカラムとファイル②のItemCodeカラムが同じ1列目のカラムとして扱われます。 それぞれのカラムのデータ型は異なりますが、転送設定STEP2のカラム定義にて文字列型として設定することで、まとめて転送可能となります。
| ProductID | Name | Price |
| 1001 | りんご | 150 |
| 1002 | みかん | 100 |
| 1003 | バナナ | 200 |
| A-201 | ぶどう | 350 |
| A-202 | もも | 200 |
| B-105 | メロン | 500 |
コメント
0件のコメント
記事コメントは受け付けていません。