- - PR -
DB2で集計結果をTOP指定する方法
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-03-21 12:58
とんくま様
返答が遅くなって申し訳ございません。 そういう書き方ができるんですね。 大変勉強になりました。 (といいつつ、いまいちPARTITION BY...の部分がわかっていませんが) これを参考に自分で調べてみようと思います。 本当にありがとうございました。 |
|
投稿日時: 2006-03-22 09:33
仕様によって(MONEYが同点の場合)は
RowNumberではなく Rankかdense_rankを使う必要がありますね TBL_MONEY KEY1 | KEY2 | KEY3 | MONEY A | A1 | a1 | 10 A | A1 | a2 | 10 A | A1 | a3 | 20 A | A2 | a1 | 40 A | A3 | a1 | 40 A | A4 | a1 | 40 A | A5 | a1 | 30 A | A6 | a1 | 20 こんな感じのデータの上位二件って どれかという話で Row_Numberを使うと、A1、A2、A3、A4のどれか二件 RankだとA1、A2、A3、A4 dense_RankだとA1、A2、A3、A4、A5 がでてきます OracleSQLパズル http://oraclesqlpuzzle.hp.infoseek.co.jp [ メッセージ編集済み 編集者: 明智重蔵 編集日時 2006-03-24 12:05 ] |
|
投稿日時: 2006-03-24 10:26
明智様
返答が遅くなって申し訳ございません。 ご指摘頂いたRankやdense_rankで、ぐぐってみたら 以下のDB2マニュアルをみつけました。 http://www-306.ibm.com/software/data/db2/udb/support/manualsNLVv8.html#ja_main (ここの、SQL Reference, Volume 1 ver8.1) これを参考に勉強させて頂きたいと思います。 ご返答くださった方々、どうもありがとうございました。 |