Вам просто нужно добавить sum(distinct "size") over (partition by id)
для вычисления total_size
столбца для каждой строки в вашем SQL
:
with tab(id,"size","desc1","desc2") as
(
select 1 ,13,'xxx','yyy' from dual union all
select 1 ,13,'xxx','yyy' from dual union all
select 1 ,10,'mmm','kkk' from dual union all
select 1 ,10,'mmm','kkk' from dual
)
select t.id,
sum(distinct t."size") over (partition by id) as "total_size",
t."desc1",t."desc2"
from tab t;
P.S. size
является зарезервированным ключевым словом , , поэтому , нельзя использовать в качестве имени столбца, если не указано в кавычках. как "size"