PostgreSQLでウィンドウ関数rank()でランキング(同率で番号を飛ばす)を取得します。
※NULL値を含む場合のウィンドウ関数の結果を取得します。
【手順1】
1.「PSqlEditの起動方法」の手順で、PSqlEditを起動。
2.「PSqlEditでPostgreSQLとの接続方法」の手順で、PostgreSQLに接続。
3.「ウィンドウ関数を実行するためのテーブルの作成方法(その3)」の手順で、ウィンドウ関数を実行するためのテーブル(その3)を作成しておきます。
4.「ウィンドウ関数を実行するためのデータの入力方法(その3)」の手順で、ウィンドウ関数を実行するためのデータ(その3)を入力しておきます。
【手順2】
1.SQLエディタに以下のSQLを入力。
SELECT UserID, Score, rank() OVER (ORDER BY Score DESC) FROM TRN_Score3 ORDER BY SCORE DESC2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。
※NULL値が先頭に来ます。
1.SQLエディタに以下のSQLを入力。
SELECT UserID, Score, rank() OVER (ORDER BY Score DESC NULLS LAST) FROM TRN_Score3 ORDER BY SCORE DESC2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。
※Windows関数のOVER句に「NULLS LAST」を付与すると、NULL値が最後に来ます。
1.SQLエディタに以下のSQLを入力。
SELECT UserID, Score, rank() OVER (ORDER BY Score DESC NULLS LAST) FROM TRN_Score3 ORDER BY SCORE DESC NULLS LAST2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。
※ちなみにSELECTのORDER BY句に「NULLS LAST」を付与すると、NULL値が最後に来てORDER BYされます。
以上です。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。