データの抽出と追加
データの抽出と追加では、1 つの Analytics テーブルからレコードまたはフィールドを抽出して、別の Analytics テーブルの最後にグループとして追加することができます。抽出はコピーと同じです。末尾に追加は追加と同じです。2 つのテーブルを並べ替えるか並べ替えを解除します。
(対象テーブル)に追加するテーブルのサイズは大きくなります。新しいテーブルは作成されません。
抽出/最後に追加の操作を複数回繰り返すことによって、たとえば、月次または四半期のテーブルを組み合わせて 1 つの年次テーブルにするなどの、有用なタスクを実行できます。
例
シナリオ
従業員レコードのセット全体に対して分析を実行したいが、新しい従業員のレコードがまだ従業員マスター テーブルに含まれていない場合を考えます。
アプローチ
新しい従業員のレコードを抽出し、それらを従業員マスター テーブルの最後に追加して、分析を実行します。
ヒント
APPEND コマンドを 1 回実行しただけで、APPEND オプションを指定した EXTRACT コマンドの複数回の実行結果が置き換えられます。
詳細については、テーブルの追加を参照してください。
抽出と追加のベスト プラクティス
データを抽出および追加するときには、元のデータ ファイルには決してレコードを追加しないことが、最良の方法です。
最初に、元のテーブルから新しいテーブルへレコードを抽出することにより、新しい出力先テーブルを作成する必要があります。その後、1 つまたは複数のソース テーブルからレコードを抽出し、それらを新しいテーブルに追加します。
この方法をとれば、抽出/最後に追加の処理で何らかの問題が発生した場合に元のデータ ファイルが保持されます。
データを抽出および追加するときのさまざまなオプション
データの抽出および追加時には、3 つの異なるオプションを選択できます。
オプション | 説明 |
---|---|
レコード単位で抽出 |
レコード全体を抽出します。
|
ビュー単位で抽出 |
現在のビューにあるすべてのフィールドを抽出します。
|
フィールド単位で抽出 |
フィールドを個別に選択して抽出します。
|
オプション間の主な違い
次の図では、レコード単位、ビュー単位、フィールド単位の抽出および追加の主な違いを示しています。
レコード単位で抽出および追加 | 図の左側の 2 つのテーブルとフィールド A、B、C に示すように、フィールドの数と順序はソースとターゲット テーブルで同じである必要があります。 |
---|---|
ビュー単位、フィールド単位の抽出および追加 | 図の右側の 2 つのテーブルに示すように、 ソースとターゲット テーブルのフィールドの数と順序同じである必要がありません。 このような状況では、ターゲット テーブルのフィールド数と順序に一致するように、ソース テーブルでビューを調整することか、抽出するときに適切なフィールドを選択することができます。 次の例では、D、B、E の順序でビューにフィールドを配置するか、フィールドを選択します。フィールド A および C を省略します。 |
抽出および追加するときの並べ替えの仕組み
抽出して追加するときには、ソースおよびターゲット テーブルに存在するすべての並べ替え順は、結果として生じる結合されたテーブル内のそれぞれのレコード セットで別々に保持されます。
たとえ両方のテーブルのレコードが並べ替えられていても、結果として生じる結合されたテーブルは、並べ替えられていないテーブルと見なされます。これは、抽出されたレコードを出力先テーブルの末尾にグループとして追加するときに、出力先テーブルの既存の並べ替え順が何も考慮されないからです。
たとえば、月次または四半期テーブルを抽出して、年次テーブルを作成する場合は、月次または四半期データの内部並べ替えは保持されます。必要であれば、抽出/最後に追加操作を 1 回または複数回実行した後、結果として生じた結合テーブルを並べ替えることができます。
サーバー テーブルおよびローカル テーブルからの抽出と追加
サーバー テーブルとローカル テーブルの両方からデータを抽出/最後に追加することができます。サーバー テーブルから抽出されたデータは、サーバー上またはローカル コンピューター上のテーブルに追加できます。ローカル テーブルから抽出されたデータは、ローカル コンピューター上のテーブルにのみ追加できます。
データを抽出および追加するときの必要条件
データを抽出および追加する場合、その操作を成功させるためには、対象とするデータが、ある条件を満たしている必要があります。データが条件を満たさない場合は、規則性のないデータ、データ不足、あるいは不正確なデータとなる可能性があります。
フィールド レベルのデータ構造の違いによって、データの正常な抽出/追加が妨げられている場合は、フィールドを一致させることができるかもしれません。詳細については、フィールドの一致を参照してください。
レコード構造が異なる(つまり、データ要素が同一でない)テーブルについては、結合または関連付けを使用します。
ヒント
場合によっては、Analytics 外でデータを結合する方が簡単あるいは実用的であることもあります。フィールド間で一貫性がないために、Analytics でデータを追加することが困難な場合は、データの結合の代替方法を参照してください。
次の表は、異なる抽出および追加オプションの要件をまとめています。
要件 |
レコード単位で抽出および追加 |
ビュー単位で抽出および追加 |
フィールド単位で抽出および追加 |
---|---|---|---|
フィールド(データ要素) ソース テーブルとターゲット テーブルで、フィールド(データ要素)が同一でなければならない。 |
はい |
いいえ ターゲット テーブルのフィールドが、ソース テーブルのフィールドのサブセットとなることもあります。 |
いいえ ターゲット テーブルのフィールドが、ソース テーブルのフィールドのサブセットとなることもあります。 |
フィールドの順番 ソース テーブルとターゲット テーブルの対応するフィールドが、テーブル レイアウトにおいて同じ順序で並んでいる必要がある。 |
はい |
いいえ ソース テーブル ビューのフィールドは、ターゲット テーブルのテーブル レイアウトのフィールドと同じ順序で並んでいる必要があります。 |
いいえ ソース テーブルのフィールドは、ターゲット テーブルのテーブル レイアウトのフィールドと同じ順序で選択する必要があります。 |
フィールドの数 ソース テーブルとターゲット テーブルで、フィールドの数は同じでなければならない。 |
はい |
いいえ ソース テーブル ビューのフィールド数は、ターゲット テーブルのテーブル レイアウトのフィールド数と同じである必要があります。 |
いいえ ソース テーブルで選択するフィールド数は、ターゲット テーブルのテーブル レイアウトのフィールド数と同じである必要があります。 |
ビューの構造 ソース テーブル ビューのデータ構造は、ターゲット テーブルのテーブル レイアウトと同一である必要がある。 |
いいえ |
はい |
いいえ |
レコード長 ソース テーブルとターゲット テーブルで全レコード長が同一である必要がある。 |
はい |
いいえ |
いいえ |
フィールド長 ソース テーブルとターゲット テーブルで、対応するフィールドの長さが同一である必要がある。 |
はい |
はい |
はい |
フィールド名 ソース テーブルとターゲット テーブルで、対応するフィールドの名前が同一である必要がある。 |
いいえ |
いいえ |
いいえ |
ターゲット フィールド名は結果の結合されたテーブルで使用されます。 | |||
開始位置 ソース テーブルとターゲット テーブルで、対応するフィールドの開始位置が同一である必要がある。 |
はい |
いいえ |
いいえ |
データ型 ソース テーブルとターゲット テーブルで、対応するフィールドのデータ型が同一である必要がある。 |
はい |
はい |
はい |
日付時刻書式 ソース テーブルとターゲット テーブルで、対応するフィールドの日付書式および日付時刻書式が同一である必要がある。 |
はい |
はい |
はい |