# 先行する LOAD

先行する LOAD 機能を使用すると、1 つのパスでテーブルをロードし、複数の連続した変換を定義できます。基本的に、通常指定する From または Resident などのソース修飾子を指定せずに、下記の LOAD または SELECT ステートメントからロードするのが LOAD ステートメントです。このようにして任意の数の LOAD ステートメントを積み上げることができます。ステートメントの評価は、最下部のステートメントから順番に、上に向かって実行されます。

Resident を使用しても同じ結果を得られますが、ほとんどの場合、先行する LOAD の方が時間がかかりません。

先行する Load のもう 1 つの利点は、計算を 1 か所に維持して、その上に配置された LOAD ステートメントで再利用できるという点にあります。

情報メモJoin、Crosstable、Intervalmatch のプレフィックスは、先行する LOAD とは併用できません。

例1： SELECT ステートメントでロードされたデータの変換

SELECT ステートメントを使用してデータベースからデータをロードすると、QlikView 関数を使用して SELECT ステートメントでデータを解釈することができなくなります。この問題を解決するには、データの変換を行う場所、SELECT ステートメントの上に LOAD ステートメントを追加します。

この例では、前の SELECT ステートメントをソースとして使用し、QlikView の関数 Date# を LOAD ステートメントで使用することで、保存された日付を文字列として解釈しています。

```
LOAD Date#(OrderDate,'YYYYMMDD') as OrderDate;
```

```
SQL SELECT OrderDate FROM … ;
```

例2： 計算の再利用によるスクリプトの簡素化

この例では、スクリプトで計算を複数回使用しています。

```
LOAD  ...,
   Age( FromDate + IterNo() – 1, BirthDate ) as Age,
   Date( FromDate + IterNo() – 1 ) as ReferenceDate
   Resident Policies
      While IterNo() <= ToDate - FromDate + 1 ;
```

最初のパスで計算を導入すると、先行する LOAD で Age 関数を再利用できます。

LOAD ..., ReferenceDate, Age( ReferenceDate, BirthDate ) as Age; LOAD \*, Date( FromDate + IterNo() – 1 ) as ReferenceDate Resident Policies While IterNo() &lt;= ToDate - FromDate + 1 ;

## 詳細を見る

* [Load](https://help.qlik.com/ja-JP/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm)
* [事前にロードされているテーブルからのデータのロード](https://help.qlik.com/ja-JP/qlikview/September2026/Subsystems/Client/Content/QV_QlikView/Scripting/load-data-from-previously-loaded-table.htm)