EXTRACT コマンド
Analytics テーブルからデータを抽出し、それを新しい Analytics テーブルに出力するか、または既存の Analytics テーブルへ追加します。レコード全体または選択したフィールドを抽出することができます。
構文
EXTRACT {RECORD|FIELDS フィールド名 <AS 新しいフィールド名> <...n>|FIELDS ALL} <関連テーブル名.ALL <...n>> <EXCLUDE フィールド名 <...n>> TO テーブル名 <LOCAL> <IF テスト> <WHILE テスト> <FIRST 範囲|NEXT 範囲> <EOF> <APPEND> <OPEN>
パラメーター
| 名前 | 説明 |
|---|---|
| RECORD | FIELDS フィールド名 | FIELDS ALL |
出力に含めるフィールド:
|
| AS 新しいフィールド名 省略可能 |
FIELDS フィールド名を使って抽出を行う場合にのみ有効です。 出力テーブルのフィールドの新しい物理名と表示名(代替の列タイトル)。 指定した特殊文字やスペースは表示名に保持され、テーブル レイアウトの物理フィールド名では自動的にアンダースコア (_) に変換されます。 新しいフィールド名 を引用符で囲んだ文字列として指定します。表示名に改行を入れたい場合は、語句の間にセミコロン (;) を入れます。 メモ
AS は新しいテーブルに抽出を行う場合にのみ使用します。既存のテーブルに追加している場合は、既存テーブルの代替列見出しが優先されます。 |
| 関連テーブル名.ALL 省略可能 |
指定された関連テーブルのすべてのフィールドを使用します。 |
| EXCLUDE フィールド名 省略可能 |
FIELDS ALL または 関連テーブル名.ALL を使用して抽出したときのみ有効です。 コマンドから除外するフィールド。EXCLUDE では、指定したフィールドを除外して、ALL キーワードを微調整できます。 EXCLUDE は、FIELDS ALL の直後、または 1 つ以上の関連テーブルのフィールドを含める場合は ALL キーワードの最後の出現の直後に続く必要があります。例: FIELDS ALL EXCLUDE field_1 field_2 FIELDS ALL 関連テーブル名.ALL EXCLUDE field_1 field_2 |
| TO テーブル名 |
コマンドの結果を送信する場所:
|
|
LOCAL 省略可能 |
Analytics プロジェクトと同じ場所に出力ファイルを保存します。 メモ Analytics テーブルである出力ファイルを含むサーバー テーブルに対してコマンドを実行するときにのみ適用されます。 LOCAL パラメーターは TO パラメーターの直後に置く必要があります。 |
|
IF テスト 省略可能 |
各レコードを処理するために真である必要がある条件式。コマンドは、その条件を満たすレコードに対してのみ実行されます。 メモ IF パラメーターは、任意の範囲パラメーター(WHILE、FIRST、NEXT)が適用された後に、テーブルに残るレコードに対してのみ評価されます。 |
|
WHILE テスト 省略可能 |
各レコードを処理するために真である必要がある条件式。条件が false と評価するか、テーブルの最後に達したら、コマンドは実行を中止します。 メモ WHILE を FIRST または NEXT とともに使用する場合は、1 つの制限に達するとすぐに、レコードの処理が停止します。 |
| FIRST 範囲 | NEXT 範囲 省略可能 |
処理するレコード数:
範囲は処理するレコード数を指定します。 FIRST と NEXT を省略すると、すべてのレコードがデフォルトで処理されます。 |
|
EOF 省略可能 |
ファイルの終わりに達した後、コマンドをもう一度実行します。 これにより、GROUP コマンド内でテーブルの最後のレコードが処理されることが保証されます。すべてのフィールドが以前のレコードを参照する演算フィールドである場合にのみ使用してください。 |
|
APPEND 省略可能 |
コマンドの出力を既存ファイルに上書きしないで、そのファイルの末尾に追加します。 メモ コマンドの出力と既存のファイルの構造が同一であるようにする必要があります。
出力は、既存ファイルとの間でファイル構造が違っている場合でも、Analytics によって既存ファイルに追加されます。出力と既存のファイルの構造が一致しない場合は、データが混在、不足、不正確になります。 |
|
OPEN 省略可能 |
コマンドを実行した後、コマンドによって作成されたテーブルを開きます。コマンドが出力テーブルを作成する場合にのみ有効です。 |
例
テーブル内のすべてのレコードを新しいテーブルへ抽出する
次の例では、既存のすべてのレコードを新しい Analytics テーブルへ抽出することにより、AR_Customer テーブルの正確な複製を作成します。すべての演算フィールドは演算フィールドとして保持されます。
OPEN AR_Customer
EXTRACT RECORD TO "AR_Customer_2"
テーブル内のすべてのフィールドを新しいテーブルへ抽出する
AR_Customer テーブル内の定義済みのすべてのフィールドを新しい Analytics テーブルへ抽出するとします。すべての演算フィールドが、物理フィールドに変換され、実際に計算された値が格納されます。
OPEN AR_Customer
EXTRACT FIELDS ALL TO "AR_Customer_2"
テーブルのすべてのレコードの抽出と、既存のテーブルへの追加
AR_Customer テーブルのすべてのレコードを抽出し、AR_Customer_Master テーブルの最後にグループとして追加します。
OPEN AR_Customer
EXTRACT RECORD TO "AR_Customer_Master" APPEND
テーブルのすべてのレコードの抽出と、別のフォルダーの既存のテーブルへの追加
AR_Customer テーブルのすべてのレコードを抽出し、AR_Customer_Master テーブルの最後にグループとして追加します。これは、Analytics プロジェクト フォルダー以外のフォルダーです。
OPEN AR_Customer
EXTRACT RECORD TO "C:\Users\Customer Data\AR_Customer_Master" APPEND
テーブルから新しいテーブルへフィールドのサブセットを抽出する
テーブルのフィールドのサブセットを抽出する際には、2 つのオプションがあります。
- 抽出する個別のフィールドを指定する
- FIELDS ALL を指定し、抽出から除外するフィールドを指定する
ヒント
最も作業が少ない方法を使用してください。
次の例は、7 つのフィールドがある AR_Customer テーブルを参照します。
- reference number(参照番号)
- customer number(顧客番号)
- customer name(顧客名)
- transaction type(取引形態)
- 請求日
- due date(期日)
- 請求金額
抽出するフィールドを指定する
次の例では、AR_Customer テーブルから 3 つのフィールドを新しい Analytics テーブルへ抽出します。
OPEN AR_Customer
EXTRACT FIELDS Name Due Date TO "AR_Customer_Dates.fil"
FIELDS ALL を指定し、除外するフィールドを指定する
次の例では、AR_Customer テーブルから、Reference_num フィールドを除くすべてのフィールドを新しい Analytics テーブルへ抽出します。
OPEN AR_Customer
EXTRACT FIELDS ALL EXCLUDE Reference_num TO "AR_Customer_Dates.fil"
抽出されたフィールドの新規名の作成
次の例では、AR_Customer テーブルから 3 つのフィールドを抽出し、新しい Analytics テーブルにそれらのフィールドの新しい物理名と表示名を作成します。
OPEN AR_Customer
EXTRACT FIELDS Name AS "Customer;Name" Due AS "Due;Date" Date AS "Invoice;Date" TO "AR_Customer_Dates.fil"
語句の間にセミコロン (;) を入れると、表示名に改行が入ります。物理フィールド名では、セミコロンは自動的にアンダースコア (_) に変換されます。
条件に基づいてフィールドを抽出する
次の例では、Due フィールドの日付が 2014 年 7 月 1 日より前の日付の場合に、AR_Customer テーブルから 3 つのフィールドを新しい Analytics テーブルへ抽出します。
OPEN AR_Customer
EXTRACT FIELDS Name Due Date IF Due < `20140701` TO "Overdue.fil"
備考
このコマンドの動作の詳細については、データの抽出またはデータの抽出と追加を参照してください。
テーブルの抽出(EXTRACT)とテーブルのコピーの比較
EXTRACT では、新しいテーブル レイアウトだけでなく、新しいソース データ ファイル(.fil)も作成されます。
これに対し、ナビゲーター([編集] > [コピー])を使ってテーブルを作成すると、元のソース データ ファイルとも関連付けられた新しいテーブル レイアウトが作成されます。この場合、新しいデータ ファイルが作成されるわけではありません。