Load

LOADステートメントは、ファイル、スクリプトで定義されたデータ、事前にロードされたテーブル、Web ページ、後続の SELECT ステートメントの結果、または自動生成されたデータから項目をロードします。

構文:  

LOAD [ distinct ] fieldlist

[( from file [ format-spec ] |

from_field fieldassource [format-spec]

inline data [ format-spec ] |

resident table-label |

autogenerate size )]

[ where criterion | while criterion ]

[ group_by groupbyfieldlist ]

[order_by orderbyfieldlist ]

引数:  

引数 説明
distinct distinctは、レコードが重複する場合に最初のレコードのみをロードするよう指定する場合に使用される述語です。
fieldlist fieldlist ::= ( * | field {, field } )

ロードする項目のリスト。項目リストとして *を使用すると、テーブルのすべての項目が指定されます。

field ::= ( fieldref | expression ) [as aliasname ]

項目定義には、リテラル、既存項目への参照、または数式を含める必要があります。

fieldref ::= ( fieldname |@fieldnumber |@startpos:endpos [ I | U | R | B | T] )

fieldnameは、テーブル内の項目名と同じテキストです。項目名にスペースなどが含まれる場合は、ストレート二重引用符または角括弧で囲む必要があります。明示的に表現できない項目名については、次のような表記規則を使用します。

@fieldnumberは、区切り記号付きテーブル ファイルの項目番号を表します。「@」が前に付いた正の整数でなければなりません。常に 1 から項目の数まで、番号が振られています。

@startpos:endposは、固定長レコードが含まれるファイル内の項目の開始および終了位置を表します。位置はどちらも正の整数でなければなりません。2 つの番号の前に「@」を付け、コロン (:) で区切る必要があります。常に 1 から位置の数までの番号が付けられます。最後の項目で、nは終了位置として使用されます。

  • @startpos:endposの直後に IU の文字が続く場合は、バイトの読み取りは符号付き (I) バイナリまたは符号なし (U) の整数 (Intel のバイト順) と解釈されます。読み取られる位置の数は、1、2、または 4 です。
  • @startpos:endposの直後に文字R が続く場合は、読み取られるバイトはバイナリの実数 (IEEE 32 ビットまたは 64 ビットの浮動小数点) として解釈されます。読み取られる位置の数は、4 または 8 です。
  • @startpos:endposの直後に文字 B が続く場合は、読み取られるバイトは COMP-3 標準に従ったBCD (Binary Coded Decimal) 数として解釈されます。任意のバイト数を指定できます。

expressionは、同じテーブルにある 1 つまたは複数の項目に基づいた数値関数または文字列関数です。詳細については、数式の構文を参照してください。

項目に新しい名前を割り当てるには、asを使用します。

from

fromは、データをファイルからロードする必要がある場合に使用します。

file ::= [ path ] filename

  • 絶対

    例: c:\data\

  • QlikViewドキュメントの相対パス。

    例: data\

  • インターネットまたはイントラネット上の位置を示す URL アドレス (HTTPあるいはFTP)。この URL は、たとえば空白文字を含んでいる場合などに URL エンコードする必要があります。

    例: http://www.qlik.com

    例: http://www.enterprise.com/project%20files(http://www.enterprise.com/project files)

パスを省略すると、QlikViewは、Directory ステートメントで指定されたディレクトリのファイルを検索します。Directoryステートメントが存在しない場合は、QlikView は作業中のディレクトリを検索します。通常は、このディレクトリは QlikView ファイルが置かれているディレクトリです。

注: QlikViewサーバー インストール時のデフォルトの作業ディレクトリは、C:\ProgramData\QlikTech\Documents になります。デフォルトの作業ディレクトリは QlikView Management Consoleで変更できます。

filenameには、標準の DOS ワイルドカード文字 (* および?) が含まれる場合があります。これにより、指定されたディレクトリ内にあるすべての一致ファイルがロードされます。

format-spec ::= ( fspec-item { , fspec-item } )

この書式指定は、括弧に囲まれた複数の書式指定アイテムのリストで構成されます。

参照項目: Directory

参照項目: From

from_field 事前にロードされた項目からデータをロードする場合は、from_fieldを使用します。

fieldassource::=(tablename, fieldname)

この項目は、事前にロードされた tablenamefieldname の名前です。

format-spec ::= ( fspec-item {, fspec-item } )

この書式指定は、括弧に囲まれた複数の書式指定アイテムのリストで構成されます。

inline スクリプト内でデータを入力し、ファイルからロードしない場合は、inlineを使用します。

data ::= [ text ]

inline節を使用してい入力するデータは、二重引用符または角括弧で囲む必要があります。括弧で囲まれたテキストは、ファイルのコンテンツと同じ方法で解釈されます。そのため、テキスト ファイルで新しい行を挿入する場合と同様に、inline節のテキストについても Enter キーを押します。

format-spec ::= ( fspec-item {, fspec-item } )

この書式指定は、括弧に囲まれた複数の書式指定アイテムのリストで構成されます。

resident 事前にロード済みのテーブルからデータをロードする場合は、residentを使用します。

table labelは、元のテーブルを作成した LOAD またはSELECT ステートメントの前に配置されるラベルです。ラベルの最後にはコロン (:) を記述します。

参照項目: 事前にロードされているテーブルからのデータのロード

参照項目: テーブル ラベル

autogenerate QlikViewでデータを自動生成する場合は、autogenerate を使用します。

size ::= number

Numberは、生成するレコード数を示す整数です。項目のリストには、データベースからデータを取得する必要のある数式を記述できません。数式では、定数とパラメータを使用しない関数 (rand()recno() など) のみが使用されます。

where where節は、レコードを選択に含めるかどうかを示します。criterionTrue の場合は選択が含まれます。

criterionは論理式です。

while

whileは、レコードを繰り返し読み取るかどうかを示す節です。criterionTrue である限り、同じレコードが読み取られます。通常、while節には IterNo( ) 関数が含まれていなければなりません。

criterionは論理式です。

group_by

データを集計 (グループ化) すべき項目を定義するには、group by節を使用します。集計項目は、ロードする数式に挿入しなければなりません。集計項目以外の項目は、ロードした数式に含まれる集計関数の外部で使用できます。

groupbyfieldlist ::= (fieldname { ,fieldname } )

order_by order by節は、load ステートメントで処理される前に、常駐テーブルのレコードをソートします。1 つ以上の項目の昇順または降順で、常駐テーブルをソートできます。最初に数値、次に各国の照合順でソートされます。この節は、データ ソースが常駐テーブルの場合に限り使用できます。

順序項目は、常駐テーブルをソートする項目を指定します。項目は、名前または常駐テーブル内での番号 (最初の項目が番号 1) で指定できます。

orderbyfieldlist ::= fieldname [ sortorder ] { , fieldname [ sortorder ] }

sortorderは、昇順の asc または降順のdesc のどちらかになります。sortorderを指定しない場合は、asc と見なされます。

fieldnamepathfilenamealiasname は、それぞれの名前を示すテキスト文字列です。ソース テーブルのフィールドはfieldnameとして使用できます。ただし、as 節 (aliasname) を使用して作成された項目は範囲外になり、同じ load ステートメント内では使用できません。

frominlineresidentfrom_field、または autogenerate 節でデータのソースが指定されない場合、データは直後の SELECT またはLOAD ステートメントの結果からロードされます。後続のステートメントには、プレフィックスを記述できません。

参照項目: 先行する LOAD

例:  

参照項目: