ユーザ用ツール

サイト用ツール


database:sql

SQL文について

行番号を返す方法

ROW_NUMBER() 関数は検索結果レコードに1から始まる順番を付ける関数となっている。 OVER関数と共に用いられ、上位Nレコードや下位Nレコードを選択することが可能。

構文

ROW_NUMBER() OVER(ORDER BY COLUMN [,COLUMN ...])
ROW_NUMBER() OVER(PARTITION BY COLUMN [,COLUMN...] ORDER BY COLUMN [,COLUMN...])

PARTITION BY によって、指定した項目ごとにグルーピングしてレコードを並び替えることが出来る。 セッションID毎に時系列順にURLを取得したい場合は以下のようにする。

ROW_NUMBER() OVER(PARTITION BY session_id ORDER BY event_timestamp) -- セッションごとにタイムスタンプ順に並び変え、1から順に番号を付ける。
database/sql.txt · 最終更新: 2023/02/08 16:19 by mikoto