IPA公式正解:エ RANK
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【エ】です。ウィンドウ関数を用いてパーティションごとに順位(1, 2, 3...)を求めるにはRANK関数(またはDENSE_ROW, ROW_NUMBER)を使用します。結果表の「順位」列には整数値が入るためRANKが適切です。
【詳細解説】■ 本問の核心・解法のポイント
SQLのウィンドウ関数(分析関数)を用いた順位付けに関する問題です。
SQL文では `OVER (PARTITION BY クラス ORDER BY 得点 DESC)` によって、クラスごとに得点の降順でウィンドウが定義されています。
実行結果の「順位」列を見ると、クラスAで「1, 2, 3」、クラスBで「1, 2」のように1から始まる連続した整数の順位が割り振られています。
・各選択肢の徹底解説:
・ア:CUME_DISTは累積分布(値の相対位置を0より大きく1以下の実数で表す)を計算する関数であるため誤りです。
・イ:MAXはグループ内の最大値を求める集約/ウィンドウ関数であり、順位を求める関数ではないため誤りです。
・ウ:PERCENT_RANKは相対順位(0以上1以下のパーセンタイル値)を計算する関数であるため誤りです。
・【選択肢エ★】:RANK関数は指定した並び順に従って1から始まる順位(1, 2, 3...)を付与する関数であり、結果表の順位列と完全に合致するため正解です。
よって正解はエです。