1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| WITH MATABLE AS (SELECT 'A100' mesure,35690 finan FROM DUAL UNION ALL
SELECT 'A100' mesure,5278 finan FROM DUAL UNION ALL
SELECT 'A100' mesure,45 finan FROM DUAL UNION ALL
SELECT 'B100' mesure,12 finan FROM DUAL UNION ALL
SELECT 'B100' mesure,432 finan FROM DUAL UNION ALL
SELECT 'B100' mesure,7654 finan FROM DUAL UNION ALL
SELECT 'B100' mesure,123456 finan FROM DUAL UNION ALL
SELECT 'C100' mesure,5000 finan FROM DUAL UNION ALL
SELECT 'C100' mesure,5000 finan FROM DUAL UNION ALL
SELECT 'C100' mesure,5000 finan FROM DUAL UNION ALL
SELECT 'D100' mesure,7000 finan FROM DUAL UNION ALL
SELECT 'D100' mesure,5000 finan FROM DUAL UNION ALL
SELECT 'D100' mesure,5000 finan FROM DUAL )
SELECT mesure, finan
FROM (
SELECT mesure, finan, row_number() over (PARTITION BY mesure ORDER BY finan DESC) AS num
FROM matable
)
WHERE num BETWEEN 1 AND 2 |
Partager