borc alacak ve bakiye yi sql ile alabiliyorum.
yapmak istediğim şu. bakiyesi 0 dan büyük yada 100 den kücük gibi hesaplanan bakiyenin filtrelenmesi.
bunu nasıl yapabilirim.
sitede aradım bulamadım. varsa linkini versenizde yeter.
aşagıda kullandığım sql cümleceği var:
select cariunvan as ACIKLAMA ,count(*) as ADET,SUM(borc) AS TOPLAM_BORC,SUM(ALACAK) AS TOPLAM_ALACAK, SUM(BORC)-SUM(ALACAK) AS BAKIYE from cari_hareket where 1=1 '+ LsSQL+ ' group by cariunvan' ;
bakiye sorgulama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
selam
kardeş
böyle bir şey yapabilirisn.
kardeş
Kod: Tümünü seç
select sum(bakiye) from tabloadın
where bakiye>0 and bakiye<101
merhaba ,
GROUP BY deyimi kullandığınız yerlerde grup sonuçlarına göre filtreleme işlemi yapmakta HAVING deyimi oldukça kullanışlıdır sizin örneğiniz üzerinde şu şekilde kullanılabilir
firde unutmadan count(*) yerine hiç bir zamanb oş olmayacak mesela tablonun anahtar alanı olabilir örnekte id isminde olsun count(id) şeklinde kullanmalısınız sonuç diğer türlü yanlış çıkabilir, null olanlar toplamı etkiler.
iyi çalışmalar.
GROUP BY deyimi kullandığınız yerlerde grup sonuçlarına göre filtreleme işlemi yapmakta HAVING deyimi oldukça kullanışlıdır sizin örneğiniz üzerinde şu şekilde kullanılabilir
Kod: Tümünü seç
select cariunvan as ACIKLAMA ,count(*) as ADET,SUM(borc) AS TOPLAM_BORC,SUM(ALACAK) AS TOPLAM_ALACAK, SUM(BORC)-SUM(ALACAK) AS BAKIYE from cari_hareket where 1=1 '+ LsSQL+ ' group by cariunvan HAVING (SUM(BORC)-SUM(ALACAK))>0 or (SUM(BORC)-SUM(ALACAK))<100 order by cariunvan ' ;
firde unutmadan count(*) yerine hiç bir zamanb oş olmayacak mesela tablonun anahtar alanı olabilir örnekte id isminde olsun count(id) şeklinde kullanmalısınız sonuç diğer türlü yanlış çıkabilir, null olanlar toplamı etkiler.
iyi çalışmalar.
Volkan KAMADAN
www.polisoft.com.tr
www.polisoft.com.tr
Re:
vkamadan yazdı:merhaba ,
GROUP BY deyimi kullandığınız yerlerde grup sonuçlarına göre filtreleme işlemi yapmakta HAVING deyimi oldukça kullanışlıdır sizin örneğiniz üzerinde şu şekilde kullanılabilirKod: Tümünü seç
select cariunvan as ACIKLAMA ,count(*) as ADET,SUM(borc) AS TOPLAM_BORC,SUM(ALACAK) AS TOPLAM_ALACAK, SUM(BORC)-SUM(ALACAK) AS BAKIYE from cari_hareket where 1=1 '+ LsSQL+ ' group by cariunvan HAVING (SUM(BORC)-SUM(ALACAK))>0 or (SUM(BORC)-SUM(ALACAK))<100 order by cariunvan ' ;
firde unutmadan count(*) yerine hiç bir zamanb oş olmayacak mesela tablonun anahtar alanı olabilir örnekte id isminde olsun count(id) şeklinde kullanmalısınız sonuç diğer türlü yanlış çıkabilir, null olanlar toplamı etkiler.
iyi çalışmalar.
Mrhb,
Hocam '+ LsSQL+ ' anlayamadım.
burada hata veriyor. yardımcı olurmusun.
Re: bakiye sorgulama
@Volkan sanırım orada ek filtreleme veya Sıralama eklemiş.
Bir kelimenin anlamını öğretsen bile yeter..


