Merhaba arkadaşlar , ufak bir sorunum var .
STOKHAR tablomuzda
barkod
tarih
carikod
fatno
CARI tablomuz
carikod
cariadi
alanlarımız var. her kayıt bir adet ürün , aynı tarih ve fatno lu aynı barkoddan çok sayıda var yani. seri nolar ile ayrılıyor , kafa karıştırmasın diye buraya almadım..
şöyle birşey çekmek istiyorum.. barkodu gireceğim , iki tarih arasını gireceğim
bu barkodlu üründen hangi carikodlar hangi tarihte kaçar tane almış.
SELECT CARIKOD , TARIH , COUNT(*) FROM STOKHAR WHERE barkod= :pbarkod and BETWEEN (:ilktarih and :sontarih) GROUP BY CARIKOD,TARIH
şeklinde birşey düşündüm ama sonrasını getiremedim . LEFT JOIN CARI ON CARI.carikod=STOKHAR.carikod ile nasıl bağlayııp cariadi nı da gösteririm..
Gruplamalı SQL ifadesi
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Gruplamalı SQL ifadesi
merhaba;
Şeklinde yaparsanız olur.
Kod: Tümünü seç
SELECT S.TARIH AS TARIH, S.ADET AS ADET, C.CARIADI AS CADI
FROM STOKHAR S
LEFT JOIN CARI C ON C.CARIKOD=S.CARIKOD
WHERE
S.BARKOD=:SBARKOD
AND S.TARIH>=:ILKTARIH AND S.TARIH<=:SONTARIH
Re: Gruplamalı SQL ifadesi
Sizin önerdiğinizde count(*) ve group by kısmı yok. ayrıca bizim tabloda STOKHAR.ADET alanı da yok. her kayıt bir adet ürünü temsil ediyor. biz kayıt adetlerini sayacağız count ile..
Re: Gruplamalı SQL ifadesi
merhaba;
şeklinde yapabilirsin o zaman.
Fakat adet neden yokki ben olsam her kayıtta 1 adet sayılsa dahi adet alanını koyarım ki bu tip listelemelerde böyle sorunlar yaşamıyayım.
Kod: Tümünü seç
SELECT S.TARIH AS TARIH, C.CARIADI AS CADI, COUNT(*) AS ADET
FROM STOKHAR S
LEFT JOIN CARI C ON C.CARIKOD=S.CARIKOD
WHERE
S.BARKOD=:SBARKOD
AND S.TARIH>=:ILKTARIH AND S.TARIH<=:SONTARIH
GROUP BY S.TARIH, C.CARIADI
Fakat adet neden yokki ben olsam her kayıtta 1 adet sayılsa dahi adet alanını koyarım ki bu tip listelemelerde böyle sorunlar yaşamıyayım.
Re: Gruplamalı SQL ifadesi
sevgili @esistem madem sordun onu da söyleyeyim.. Hani ilaç kutularının üstünde karekodlar aldı ya barkodların yerini. İlaç takip sistemi (its) anlayacağın. Burada her bir kutu serino+son kull ta.+batch no ile tekil şekilde tanımlanmış durumda. onun için ürün için adet hanesi yok. her bir kayıt farklı bir kutuyu temsil ediyor , bir adet yani. bunu da count ile saymak zorundayız.
Re: Gruplamalı SQL ifadesi
merhaba;
anladığım kadarı ile başka bir programın veritabanından bilgi çekmek istiyorsunuz.
o halde sanırım son verdiğim kod işinizi görmüştür.
kolay gelsin...
anladığım kadarı ile başka bir programın veritabanından bilgi çekmek istiyorsunuz.
o halde sanırım son verdiğim kod işinizi görmüştür.
kolay gelsin...
Re: Gruplamalı SQL ifadesi
verdiğiniz kod işimi gördü.. teşekkürler. basitçe tarih - cariadı - kututoplam şeklinde bir liste alabiliyorum 
bu program stok-fatura programı değil. tablo adlarının öyle olduğuna bakmayın. çıkan kutuların karekod bilgilerini müşteriye transferini sağlayan değişik birşey. veritabanı da yabancı değil , bizzat program kendi kullanıyor.

bu program stok-fatura programı değil. tablo adlarının öyle olduğuna bakmayın. çıkan kutuların karekod bilgilerini müşteriye transferini sağlayan değişik birşey. veritabanı da yabancı değil , bizzat program kendi kullanıyor.