IBQuery1.Close;
IBQuery1.SQL.Clear;
IBQuery1.SQL.Add( 'select sum(sevkdetail.sevkadeti) as sevkadeti,extract(month from sevkdetail.sevktarihi) as sevkayi,GENELDETAIL1.MUSTERIADI from geneldetail1,sevkdetail ');
IBQuery1.SQL.Add( 'WHERE GENELDETAIL1.MUSTERIADI='''+EDIT1.Text+''' and sevktarihi='''+datetostr(DateTimePicker1.date)+''' AND sevktarihi='''+datetostr(DateTimePicker2.date)+''' ');
IBQuery1.SQL.add('GROUP BY extract(month from sevkdetail.sevktarihi)');
IBQuery1.prepare;
IBQuery1.open;
arkadaslar bu kodla edite ismi yazilan musterinin belirtilen tarih araligindaki aylarin toplam sevk miktarlarini gostermek istiyorum.fakat bana soyle sacma bir sonuc veriyor. hata nerde olabilir?
sevkadeti sevkayi
13755 9
bu sonuc dogru degil arkadaslar nerde hata yapiyorum.
select gd.musteriadi, sd.ay, sum(sd.adet) from genelmusteridetail gd
left join sevkdetail sd on sd ile gd arasındaki bağlantı
where diğer where parametreleri
group by 1,2
senin işlemindeki hata sevkdetail ile genel detail arasındaki bağlantıyı belirtmemen. oda iki tarih arasındaki tüm sevkdetail ile adı belirttiğin isim olan kaydın kartezyen çarpımını getiriyor.
yukardaki yapıya uygun yazdığın zaman hata olmayacaktır.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim