User manual

4 OLAP の使用
パフォーマンス&チューニング・ガイド 79
Samuels 37400.000 M 19
Singer 34892.000 M 20
Chao 33890.000 M 21
ランク付けの例 3 
この例では、カリフォルニアおよびテキサスの女性従業員を
取得し、給与を基準として降順にランク付けしています。累積和を降順で示す
ために、PERCENT_RANK 関数を使用しています。
SELECT emp_lname, salary, sex, CAST(PERCENT_RANK() OVER
(ORDER BY salary DESC) AS numeric (4, 2)) AS RANK
FROM employee WHERE state IN ('CA', 'TX') AND sex ='F'
ORDER BY salary DESC;
このクエリの結果セットを次に示します。
emp_lname salary sex percent
--------- --------- --- ----------
Savarino 72300.000 F 0.00
Smith 51411.000 F 0.33
Clark 45000.000 F 0.66
Garcia 39800.000 F 1.00
ランク付けの例 4 
PERCENT_RANK 関数を使用してデータ・セットにお
る上位または下位のパーセンタイルを調べることができます。この例のクエリ
は、給与の額がデータ・セットの上位 5 に入る男性従業員を返します。
SELECT * FROM (SELECT emp_lname, salary, sex,
CAST(PERCENT_RANK() OVER (ORDER BY salary DESC) as numeric
(4, 2)) AS percent
FROM employee WHERE state IN ('MA') AND sex ='F' ) AS
DT where percent > 0.5
ORDER BY salary DESC;
このクエリの結果セットを次に示します。
emp_lname salary sex percent
--------- ---------- --- ---------
Whitney 45700.000 F 0.51
Barletta 45450.000 F 0.55
Higgins 43700.000 F 0.59
Siperstein 39875.500 F 0.62
Coe 36500.000 F 0.66
Espinoza 36490.000 F 0.70
Wetherby 35745.000 F 0.74
Braun 34300.000 F 0.77
Butterfield 34011.000 F 0.81
Bigelow 31200.000 F 0.85
Bertrand 29800.000 F 0.88
Lambert 29384.000 F 0.92
Kuo 28200.000 F 0.96
Romero 27500.000 F 1.00