row_number関数は、結果のデータに対して、開始番号の値から一意性を保証した番号を生成します。
row_number関数の書式を以下の図に示します。
図4.32 row_number関数の書式
開始する番号を指定します。
開始番号の範囲は、0以上で、18桁までの整数です。
開始番号が省略されると、1となります。
ポイント
各動作環境ファイルのParallelNumパラメタが省略または1の場合、連続した番号が設定されます。
ParallelNumパラメタが2以上の場合で連続した番号を設定したい場合は、本関数を利用後に、ソート機能を利用してください。
注意
抽出機能のリターン式に本関数を利用する場合は、必ず、ラベル名を指定する必要があります。なお、抽出機能のリターン式に本関数を利用できるのは、入力ファイルタイプがCSV形式の場合だけです。
採番した番号が最大値(999999999999999999)を超えた場合には、異常終了します。
ParallelNumパラメタに2以上を指定し、かつ、本関数を利用した際には、同じ条件で処理を繰り返した場合、動作するタイミングで同じレコードに異なる番号が設定されるときがあります。
グループ式に「閉じ中括弧(})」が指定され、かつ、集計式に本関数が指定されている場合、上位の階層のグループに対する集計結果や、入力データ全体を1つのグループと扱ったときの集計結果に対しても番号が付加されます。
変換が正常に動作した場合は、数値型を返します。
1から採番する場合
row_number()
100から採番する場合
row_number(100)