En iyi yanıtlayıcılar
Query de problem ?

Soru
-
Merhaba
Aşağıdaki query ile aldığım sonuç, programda raporlarda aldığım sonuçtan farklı çıkıyor. Özel Kod a göre alıyorum ve tarih aralığı 1-31 Ağustos. Acaba query de mi bir problem var ? Yoksa yanlış tabloyu mu sorguluyorum ? Sonuçlarda 5-6 kat fark var. Aynı kayıtı left outer join le bağladığım için birden fazla görüntülenme ve fazladan toplamış olabilirmiyim ?
SELECT SUM(STFIC.TOTALDISCOUNTS) AS Expr1, SUM(STFIC.TOTALDISCOUNTED) AS Expr2, SUM(STFIC.NETTOTAL) AS Expr3 FROM LG_031_01_STFICHE AS STFIC WITH (NOLOCK) LEFT OUTER JOIN LG_031_01_STLINE AS STRNS WITH (NOLOCK) ON STRNS.STFICHEREF = STFIC.LOGICALREF LEFT OUTER JOIN LG_031_CLCARD AS CLNTC WITH (NOLOCK) ON STRNS.CLIENTREF = CLNTC.LOGICALREF WHERE (STFIC.DATE_ >= CONVERT(dateTime, '8-1-2013', 101)) AND (STFIC.DATE_ <= CONVERT(dateTime, '8-31-2013', 101)) AND (STFIC.TRCODE IN (8)) AND (CLNTC.SPECODE = 'Özel Kod')
Yanıtlar
-
Merhaba;
Entity ve linq gibi bir şey kullanıyırsan primery keyine dikkat et view de primerykey yoksa bazen verilerin doğru gelmiyor.Ama normal adonet kullanıyorsan sorun cıkmamasi lazım.Bu arada toplamlari bulmak için grup by kullanabilrisin Ör: ... SUM(Salary) ... group by Salary
- Yanıt Olarak İşaretleyen Burak ORDU 11 Eylül 2013 Çarşamba 06:38
Tüm Yanıtlar
-
-
Merhaba;
Entity ve linq gibi bir şey kullanıyırsan primery keyine dikkat et view de primerykey yoksa bazen verilerin doğru gelmiyor.Ama normal adonet kullanıyorsan sorun cıkmamasi lazım.Bu arada toplamlari bulmak için grup by kullanabilrisin Ör: ... SUM(Salary) ... group by Salary
- Yanıt Olarak İşaretleyen Burak ORDU 11 Eylül 2013 Çarşamba 06:38
-
Bu sorgu da SUM yazmadan tek tek kayıtlara baktım. Fiş no yu column olarak ekledim. Bazı fiş no lardan 4 bazılarından 8 tane var. Bu fiş nolardan her birini bir kere alarak SUM ile nasıl toplayabilirim ?
Eğer gelen kayıtlarin butun ozellikleri aynıysa distinct kullan.Boylece aynı satirların teke düşmüş olur.Sadece
select distinct ...... yazman yeterli....