はじめに

ここでは、取り込むデータに連番の項目を追加する手順をご説明します。

RowNoの利用方法

連番を追加するには、以下の形でRowNo関数を利用します。

Load
   RowNo() AS ID,
   製品,
   売上
Inline [
製品,売上
A,100
B,200
C,300
D,400
E,500
];

このスクリプトを実行すると、以下の形で「ID」項目に連番が格納されていることが確認できます。

image

RowNoとRecNoの違い

Qlik SenseにはRowNoとRecNoという、いずれも連番を出力する関数が提供されており、これらはほぼ同様な動作となっていますが、以下の点のみが異なります。

  • RowNo: Load文の出力データに対して作用する
  • RecNo: Load文の入力データに対して作用する

例えば、以下の形で同じ項目を持つ2つの別々のデータセットをロードし、その際RewNoとRecNoで連番を付加します。

Load
 RowNo() AS RowNo,
 RecNo() AS RecNO,
 製品,
 売上
Inline [
製品,売上
A,100
B,200
C,300
D,400
E,500
];

Load
 RowNo() AS RowNo,
 RecNo() AS RecNO,
 製品,
 売上
Inline [
製品,売上
F,600
G,700
I,800
J,900
K,100
];

上記のスクリプトを実行すると、以下のテーブルが作成されます。RowNoを出力データに作用するため1~10の連番となっていますが、RocNoは入力データに作用するため、データソースごとに1~5の連番が振られていることが確認できます。

image

また、以下の形でWhere句でデータの絞り込みを行った場合、RowNoは1~4の連番となっていますが、RecNoはWhere句で排除されたレコードも含めて連番が振られ、ここでは3がスキップされて出力されていることが確認できます。

Load 
 RowNo() AS RowNo,
 RecNo() AS RecNo,
 製品,
 売上
Resident 売上データ
Where 製品 <> 'C';

image

まとめ

以上、ここではRowNo, RecNoを利用してデータに連番の項目を追加する手順をご紹介しました。