Sql
nugre10.12.2004 - 12:52:08
Merhaba,
benim dunden beri uğraştığım bir sorun var.
stok takip programı yapıyorum, ben giriş ve çıkışları ayrı tabloda tutuyorum
şimdi yapmak istediğim stok miktarını bulmak

sadece stok buluyorum ama bu stoğun birim fiyat toplamlarını ve aynı zamanda tutar toplamlarınıda istiyorum ...

ayrı ayrı Query hazırladım
select malzemeadi, sum(malzemesayisi),sum(birimfiyatytl) ,sum(tutar) from STOK_GIRISI group by malzemeadi

ve
select malzemeadi,sum(verilenmiktar),sum(fiyat) ,sum(tutar) from STOK_CIKISI group by malzemeadi


şeklinde şimdi burada bunları birbirinden çıkarıp belki ayrı bir table a atıp
grid içiserinde
işte
malzeme adı Miktar Birim Fiyat Top Tutar Top.
Kalem 10 1000 10000
defter 20 2000 20000

gibi ?
 
fahrettin10.12.2004 - 14:03:10
Veritabanınızın ne oldugunu da söylemlisiniz bu tarz sorularda....

Select (select sum(SG.malzemesayisi) from STOK_GIRISI SG where SG.malzemeadi=M.malzemeadi)-(select sum(SC.malzemesayisi) from STOK_CIKISI SC where SC.malzemeadi=M.malzemeadi) as MIKTAR
from MALZEME M
order by malzemeadi
Bu örnek işinize yarayacaktır umuyorum....
 
nugre10.12.2004 - 14:18:10
kusura bakmayın haklısınız interbase kullanıyorum.
aynı şekilde diğer sum larıda yapabiliyormuyum.
neyse deniyorum teşekürler...
 
fahrettin10.12.2004 - 15:07:37
Örnekteki mantığı anladıysanız diğerlerine de uygulamak mesele olmaz zannedersem..
 
csyasar17.12.2004 - 03:04:16

select malzemeadi, sum(malzemesayisi),sum(birimfiyatytl) ,sum(tutar) from STOK_GIRISI group by malzemeadi

ve
select malzemeadi,sum(verilenmiktar),sum(fiyat) ,sum(tutar) from STOK_CIKISI group by malzemeadi




select den sonra sum dan başka herhangibir seçim işlemi yapmaman gerekiyor. yani select den sonraki malzemeadi parametresini kaldırmazsan firebird'de group by hatası veriyor. az önce aynı hataya ben de düştüm.
 
NOT : Bu sayfa google'un siteyi indekslemesi içindir. www.delphiturkiye.com/forum/ adresini kullanınız!
1998-2006 www.delphiturkiye.com