指定した単位でMIN値を取得するには、MIN~OVER句を使用します。
サンプル
以下のテーブルを使用します。
name | bu | ka | score |
---|---|---|---|
佐藤 | 営業部 | 1課 | 80 |
鈴木 | 営業部 | 1課 | 50 |
高橋 | 営業部 | 2課 | 90 |
田中 | 経理部 | 1課 | 70 |
伊藤 | 経理部 | 1課 | 60 |
例)bu単位でscoreの最小値を取得する
1 2 3 4 5 6 7 |
SELECT name ,bu ,score ,MIN(score) OVER(PARTITION BY bu) AS minscore FROM T_SCORE; |
- SQL*Plus
- NAME BU SCORE MINSCORE ----- -------- ------ ---------- 佐藤 営業部 80 50 鈴木 営業部 50 50 高橋 営業部 90 50 田中 経理部 70 60 伊藤 経理部 60 60
例)bu, ka単位でscoreの最小値を取得する
1 2 3 4 5 6 7 8 |
SELECT name ,bu ,ka ,score ,MIN(score) OVER(PARTITION BY bu, ka) AS minscore FROM T_SCORE; |
- SQL*Plus
- NAME BU KA SCORE MINSCORE ----- -------- ----- ------ ---------- 佐藤 営業部 1課 80 50 鈴木 営業部 1課 50 50 高橋 営業部 2課 90 90 田中 経理部 1課 70 60 伊藤 経理部 1課 60 60
解説
- MINの引数に最小値を取得したい対象列名を指定します。
- OVERの引数にMINを取得したい単位を指定します。
関連項目
- [ORACLE関数] 指定した単位でMIN値を取得する(MIN~OVER)
- [ORACLE関数] 指定した単位でMAX値を取得する(MAX~OVER)
- [ORACLE関数] 指定した単位毎の件数を取得する(COUNT~OVER)
- [ORACLE関数] 指定した単位で平均値を取得する(AVG~OVER)
- [ORACLE関数] 指定した単位でSUM値を取得する(SUM~OVER)