SUM(adet) ve GROUP BY urunid ile sorunu çözdüm
Aynen öyle tüm sql sürümlerinde bu şekilde kullanabilirsiniz. Bravo çözümü kendiniz buldunuz ve mantığını da çözmüşsünüz .

Aşağıda biraz daha genişlettim olayı örnekler için. Belki sonradan okuyacak arkadaşlara faydam dokunur.
select a.örnek1,a.örnek2,b.örnek1,b.örnek2, //sorguda çekilen kolonlar
sum(a.adet) as toplam //direk toplayabilirsiniz, sadece toplar
sum(case when a.tip='g' then a.adet else -adet end) as toplam2 //bir tabloda hem girişleri hem çıkışları tutuyorsanız ve bunu tipinden ayırt ediyorsanız bu şekilde bakiye yi bulabilirsiniz
from örnek1.tablo a //sorgunun çağırılacağı ana tablo
left outer join örnek2.tablo b on a.id=b.id //herhangi başka bir tabloyu join leyebilirsiniz
where ... //koşullarınızı belirtebilirsiniz
group by a.id //group by ile aynı değerleri tek satır olarak alabilirsiniz mysql sürümünde tek bir kolonu group layabilirsiniz ancak mssql sürümünde tamamını group lamanızı isteyecektir (ah gıcık MSsql)
having sum(case when a.tip='g' then miktar else -miktar end) > 0 //having ile sum ladığınız değerleri where leyebilirsiniz
adet tablosu örnek
id,tip,adet
0,g,1
1,c,2
2,g,1