Utilice las funciones analíticas de Oracle. Cambiar la vista en línea para table_a
a algo como:
select attr1,
attr2,
sum(quantity) over (partition by attr1 order by attr1) as total_qty,
attr3
from table_a
where attr4 > 0
Esto puede necesitar un pequeño ajuste, pero esa es la idea básica.