結果表の行の番号付け

Db2行に番号を付けるように明示的に要求しない限り、クエリの結果表の行に番号を付けません。

このタスクについて

結果表の行に番号を付けるには、照会に ROW_NUMBER 指定を組み込みます。 行が特定の順序で並ぶようにするには、OVER キーワードの後に ORDER BY 文節を組み込みます。 こうしなければ、行の番号は任意の順序で付けられます。

サンプル EMP 表の部門 D11 から、従業員と給与のリストを取得するとします。 次の照会をサブミットすることによって、ラストネームの順に配列された番号付きリストが戻されます。
SELECT ROW_NUMBER() OVER (ORDER BY LASTNAME) AS NUMBER,
WORKDEPT, LASTNAME, SALARY 
FROM DSN8910.EMP  
WHERE WORKDEPT='D11'                                                                   

この照会は、次の結果を戻します。

---------+---------+---------+---------+---------+---------+-----
NUMBER                   WORKDEPT  LASTNAME              SALARY  
---------+---------+---------+---------+---------+---------+-----
                      1  D11       ADAMSON             25280.00  
                      2  D11       BROWN               27740.00  
                      3  D11       JOHN                29840.00  
                      4  D11       JONES               18270.00  
                      5  D11       LUTZ                29840.00  
                      6  D11       PIANKA              22250.00  
                      7  D11       SCOUTTEN            21340.00  
                      8  D11       STERN               32250.00
                      9  D11       WALKER              20450.00
                     10  D11       YAMAMOTO            24680.00
                     11  D11       YOSHIMURA           24680.00