ウィンドウ関数を使用した PostgreSQL クエリの行番号の表示
参照と分析を容易にするために、PostgreSQL クエリの各レコードの行番号を表示します非常に有益になる可能性があります。 PostgreSQL 8.4 以降では、強力なウィンドウ関数 ROW_NUMBER() によってこの機能が有効になります。
ROW_NUMBER() 関数の利用
各レコードの連続した観測番号を表示するには、クエリで ROW_NUMBER() 関数を使用できます。その構文には、行の順序を決定するための ORDER BY 句が含まれています。実装方法は次のとおりです。
SELECT ROW_NUMBER() OVER (ORDER BY field NULLS LAST) AS rownum, * FROM foo_tbl ORDER BY field;
このクエリ内:
順序付けを行わない簡略化されたアプローチ
行の順序付けが必須ではない場合、ORDER BY を除外することでクエリを簡素化できます。句:
SELECT ROW_NUMBER() OVER(), * FROM foo_tbl;
この方法では、特定の順序や並べ替えを考慮せずに各レコードに行番号を割り当てます。
例
次の SQL について考えてみましょう。フィドルのデモンストレーション: https://www.sqlfiddle.com/#!17/665c8e/1
以上がウィンドウ関数を使用して PostgreSQL クエリ結果に行番号を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。