Forum

Ürün Satı...
 
Bildirimler
Hepsini Temizle

Ürün Satış Adedi

7 Yazılar
2 Üyeler
0 Reactions
1,653 Görüntüleme
(@mustafadagistanli)
Gönderiler: 121
Estimable Member
Konu başlatıcı
 

Merhabalar.

Kullandığımız restoran otomasyon programında, rapor alırken program arayüzü yerine SQL sorgusunu tercih ediyorum. Zaten şu an programda sorun olduğundan SQL sorgusu kullanmak zorundayım. Günlük lahmacun satış adedi ve ciro bilgisini alıyorum.

Mevcut sorgu ve çıktısı şöyle;

 Sorgu:

select tarıh,sum(adedı) LAHMACUN_ADET,(select sum(adısyon_tutarı)

from ARSIVAD where tarıh = ARSIVSIP.tarıh) CIRO 

from ARSIVSIP 

where urun_no in (1918,1920) and tarıh between '2015-01-27' and '2015-01-31'

group by tarıh 

 

Çıktı:

tarıh LAHMACUN_ADET CIRO

2015-01-27 00:00:00.000 426 2783,5

2015-01-28 00:00:00.000 311 2167

2015-01-29 00:00:00.000 313 2428 

 

1918 ve 1920 kodları acılı ve acısız lahmacuna ait.

 

Bugünden sonra tüm ürünlerin aylık toplam satış adetlerini almam gerekecek.

88 ürün var, kod aralığı 1918~2005 şeklinde.

Günlük detay gerekmiyor, aylık toplam yeterli.

Ciro gerekmiyor.

Hangi sorguyla alabilirim? 

 

 
Gönderildi : 31/01/2015 01:43

(@mustafadagistanli)
Gönderiler: 121
Estimable Member
Konu başlatıcı
 

Teşekkürler ama maalesef olmadı.

Msg 207, Level 16, State 1, Line 1

Invalid column name 'adedı'. mesajı dönüyor.

Sütun adı yanlış değil adedı şeklinde küçük ı ile yazılmış.

Çalışan sorgu ekteki görüntüde mevcut.

?dl=0

?dl=0

 

 

 

 

 

 
Gönderildi : 02/02/2015 19:46

(@mustafadagistanli)
Gönderiler: 121
Estimable Member
Konu başlatıcı
 

Alan adı doğru olmasına rağmen olmadı demek istedim.

Teşekkürler. 

 
Gönderildi : 03/02/2015 14:43

(@SemihYERLiKAYA)
Gönderiler: 11
Active Member
 

Merhaba,

 

tekrar deneyebilirmisiniz ?

 

SELECT SUM(adedı)LAHMACUN_ADET,(SELECT SUM(adısyon_tutarı) from ARSIVAD where tarıh = ARSIVSIP.tarıh)CIRO from ARSIVSIP
            where urun_no in (SELECT urun_no FROM ARSIVSIP WHERE urun_no BETWEEN '1918' AND '2005') AND YEAR(tarıh)=2015 AND MONTH(tarıh)=1 /*BURADA SEÇECEĞİN AY*/

 
Gönderildi : 04/02/2015 13:36

(@mustafadagistanli)
Gönderiler: 121
Estimable Member
Konu başlatıcı
 
Teşekkürler.
 
Şu hatayı verdi; 
Msg 8120, Level 16, State 1, Line 1
Column 'ARSIVSIP.TARIH' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
 
group by tarıh komutunu ekledim, şu çıktıyı verdi; (Yani tüm ürünlerin toplam satış adedini verdi. Bana şu lazım; ürün kodu karşısına aylık toplam satış adedi.)
 
507 2181
466 2166
509 2292,5
396 1812,5
446 1995,5
495 2193
441 2010,5
480 2138,5
518 2327
399 1762,5
403 1851,5
572 2559
444 1953,5
473 2100
534 2363
532 2339
581 2544,5
475 2114
445 1934,5
576 2456
525 2268
595 2596,5
635 2811
534 2363,5
503 2252
443 1925,5
653 2783,5
496 2167
535 2428
665 2942,5
454 2057,5 
 
Gönderildi : 04/02/2015 13:58

(@SemihYERLiKAYA)
Gönderiler: 11
Active Member
 

tekrar deneyin

SELECT urun_no,SUM(adedı)LAHMACUN_ADET from ARSIVSIP
   
        where urun_no in (SELECT urun_no FROM ARSIVSIP WHERE urun_no
BETWEEN '1918' AND '2005') AND YEAR(tarıh)=2015 AND MONTH(tarıh)=1
/*BURADA SEÇECEĞİN AY*/  order by urun_no

 
Gönderildi : 04/02/2015 18:07

(@mustafadagistanli)
Gönderiler: 121
Estimable Member
Konu başlatıcı
 
Msg 8120, Level 16, State 1, Line 1
Column 'ARSIVSIP.URUN_NO' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
 
Gönderildi : 09/02/2015 15:26

Paylaş: