En iyi yanıtlayıcılar
Sql SUM Null Değerlere 0 Getirme

Soru
-
Merhabalar İki ayrı Tablom var tb_GelirGiderlerden girilen verinin gelir=1 ,Gider=0 olarak ayırıyorum ve toplamını alıyorum ...Başka bir tablodan çekilen gelir-gider tiplerinin sorgu sonucunda hiç işlem olmasa bile görünmesi geirekiy ki geliyorda fakat işlem olmadığı için sonuç değerleri NULL geliyor bu null değeri 0 olarak düzenlemem gerek nasıl yapabilirim...Teşekkürler..
Sorgu...
SELECT TipAdi,
(SELECT SUM(Tutar) AS Expr1
FROM dbo.tb_GelirGider
WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 1)) AS GelirTutari,
(SELECT SUM(Tutar) AS Expr1
FROM dbo.tb_GelirGider AS tb_GelirGider_1
WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 0)) AS GiderTutari
FROM dbo.tb_TipTurusorgu sonucu
Gelir Gider
Bilgisayar Masrafı 54555.00 1200.00
Telefon Masrafı1 11111.00 4655.00
Dükkan Kirası1 NULL NULL
Bilgisayar Masrafı NULL NULL
Yanıtlar
-
Subquery'yi komple ISNULL içine alarak dener misin
SELECT TipAdi, ISNULL((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 1)),0) AS GelirTutari, ISNULL((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider AS tb_GelirGider_1 WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 0)),0) AS GiderTutari FROM dbo.tb_TipTuru
Kolay gelsin
- Yanıt Olarak İşaretleyen Yavuz ÇALIŞKAN 15 Temmuz 2014 Salı 06:30
Tüm Yanıtlar
-
Subquery'yi komple ISNULL içine alarak dener misin
SELECT TipAdi, ISNULL((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 1)),0) AS GelirTutari, ISNULL((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider AS tb_GelirGider_1 WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 0)),0) AS GiderTutari FROM dbo.tb_TipTuru
Kolay gelsin
- Yanıt Olarak İşaretleyen Yavuz ÇALIŞKAN 15 Temmuz 2014 Salı 06:30
-
COALESCE(kolonAdi,'0') SELECT TipAdi, COALESCE((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider WHERE(TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 1)) AS GelirTutari,0), COALESCE((SELECT SUM(Tutar) AS Expr1 FROM dbo.tb_GelirGider AS tb_GelirGider_1 WHERE (TipTuruID = dbo.tb_TipTuru.TipTuruID) AND (Gelir = 0)) AS GiderTutari,0) FROM dbo.tb_TipTuru
- Düzenleyen Soner KOYLU 10 Temmuz 2014 Perşembe 06:43
-
select TipAdi,isnull(sum(Case when Gelir=1 Then Tutar else 0 end),0) as Gelir,
isnull(sum(Case when Gelir=0 Then Tutar else 0 end),0) as Gider
From dbo.tb_GelirGider a
right join dbo.tb_TipTuru b on a.TipTuruID = b.TipTuruID
group by TipAdi,b.TipTuruID
- Düzenleyen Azure.mbaykan 10 Temmuz 2014 Perşembe 08:08 ilave 3