1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| With MaTable AS
(
SELECT 'lib1' as lib, 1 as val FROM dual UNION ALL
SELECT 'lib1' , 1 FROM dual UNION ALL
SELECT 'lib1' , 1 FROM dual UNION ALL
SELECT 'lib2' , 2 FROM dual UNION ALL
SELECT 'lib2' , 2 FROM dual UNION ALL
SELECT 'lib3' , 3 FROM dual UNION ALL
SELECT 'lib5' , 5 FROM dual
)
SELECT lib,
sum(val) AS val_all,
max(case lib when 'lib1' then sum(val) end) over() as val1
FROM MaTable
GROUP BY lib
ORDER BY LIB ASC;
LIB VAL_ALL VAL1
lib1 3 3
lib2 4 3
lib3 3 3
lib5 5 3 |