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 DESC
2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。※NULL値が先頭に来ます。
1.SQLエディタに以下のSQLを入力。
SELECT
UserID,
Score,
rank() OVER (ORDER BY Score DESC NULLS LAST)
FROM
TRN_Score3
ORDER BY
SCORE DESC
2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。※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 LAST
2.以下の様に、ウィンドウ下の実行結果にエラーが出力されなければ成功です。
※ちなみにSELECTのORDER BY句に「NULLS LAST」を付与すると、NULL値が最後に来てORDER BYされます。
以上です。
%E3%81%A7%E3%83%A9%E3%83%B3%E3%82%AD%E3%83%B3%E3%82%B0(%E5%90%8C%E7%8E%87%E3%81%A7%E7%95%AA%E5%8F%B7%E3%82%92%E9%A3%9B%E3%81%B0%E3%81%99)%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95(NULL%E5%80%A4%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88)-01.jpg)
%E3%81%A7%E3%83%A9%E3%83%B3%E3%82%AD%E3%83%B3%E3%82%B0(%E5%90%8C%E7%8E%87%E3%81%A7%E7%95%AA%E5%8F%B7%E3%82%92%E9%A3%9B%E3%81%B0%E3%81%99)%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95(NULL%E5%80%A4%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88)-02.jpg)
%E3%81%A7%E3%83%A9%E3%83%B3%E3%82%AD%E3%83%B3%E3%82%B0(%E5%90%8C%E7%8E%87%E3%81%A7%E7%95%AA%E5%8F%B7%E3%82%92%E9%A3%9B%E3%81%B0%E3%81%99)%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95(NULL%E5%80%A4%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88)-03.jpg)
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。