folder Tahribat.com Forumları
linefolder Database - Veritabanı
linefolder Mssql Cıkarma İşlemi Boş Olan Satırlar



Mssql Cıkarma İşlemi Boş Olan Satırlar

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lazz
    lazz's avatar
    Kayıt Tarihi: 15/Ekim/2007
    Erkek

    slm murıtler

    SELECT Urunler.Urun_Barkod, Urunler.Urun_Aciklama, Urunler.Urun_Fiyat, Urunler.Urun_Vergi, Katagoriler.Katagori_Aciklama, Sum (Alislar_Islemler_Detay.Alim_Miktar) - Sum (Satislar_Islemler_Detay.Satim_Miktar) AS Stok FROM ((Urunler LEFT JOIN Satislar_Islemler_Detay ON Urunler.Urun_Barkod = Satislar_Islemler_Detay.Urun_Barkod) LEFT JOIN Alislar_Islemler_Detay ON Urunler.Urun_Barkod = Alislar_Islemler_Detay.Urun_Barkod) LEFT JOIN Katagoriler ON Urunler.Urun_Tur = Katagoriler.Katagori_Kodu group By Urunler.Urun_Barkod, Urunler.Urun_Aciklama, Urunler.Urun_Fiyat, Urunler.Urun_Vergi, Katagoriler.Katagori_Aciklama

    boyle bır kodlla alıslar ve satıslardakı tablolarda bulunan stok mıktarını kontrol etmeye calısıyorum.Fakat kodum ıkı satırda dolu olursa calısıyor bossa bos deger gonderıyor.

    buyuk ıhtımalle ınner joınlerde hata yapıyorum ama kafam basmadı.yardımcı olacaklara sımdıden tesekkurler

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ozdemyr
    ozdemyr's avatar
    Kayıt Tarihi: 21/Haziran/2015
    Erkek

    LEFT JOIN'leri birbirlerine joinleyip sonra ana tabloya joinlemişsin gibi geldi bana. Hepsini ana tabloya joinlemen gerekmiyor mu? Emin değilim ama bence şu şekilde olmalı:

    SELECT Urunler.Urun_Barkod, 
    	Urunler.Urun_Aciklama, 
    	Urunler.Urun_Fiyat,
    	Urunler.Urun_Vergi,
    	Katagoriler.Katagori_Aciklama,
    	Sum(Alislar_Islemler_Detay.Alim_Miktar) - Sum(Satislar_Islemler_Detay.Satim_Miktar) AS Stok
    FROM Urunler 
    	LEFT JOIN Satislar_Islemler_Detay 
    		ON Urunler.Urun_Barkod = Satislar_Islemler_Detay.Urun_Barkod
    	LEFT JOIN Alislar_Islemler_Detay 
    		ON Urunler.Urun_Barkod = Alislar_Islemler_Detay.Urun_Barkod
    	LEFT JOIN Katagoriler 
    		ON Urunler.Urun_Tur = Katagoriler.Katagori_Kodu
    GROUP BY Urunler.Urun_Barkod, 
    	Urunler.Urun_Aciklama,
    	Urunler.Urun_Fiyat,
    	Urunler.Urun_Vergi,
    	Katagoriler.Katagori_Aciklama
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Gizem
    sLeymN
    sLeymN's avatar
    Kayıt Tarihi: 31/Mart/2008
    Erkek

    http://www.w3schools.com/sql/sql_isnull.asp

    bu işini görür hocam


    Cehennemin dibine kadar yolum var daha.. || Nasılsa her yalnız kendine sürgündür Asmera unutma.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lazz
    lazz's avatar
    Kayıt Tarihi: 15/Ekim/2007
    Erkek
    ozdemyr bunu yazdı

    LEFT JOIN'leri birbirlerine joinleyip sonra ana tabloya joinlemişsin gibi geldi bana. Hepsini ana tabloya joinlemen gerekmiyor mu? Emin değilim ama bence şu şekilde olmalı:

    SELECT Urunler.Urun_Barkod, 
    	Urunler.Urun_Aciklama, 
    	Urunler.Urun_Fiyat,
    	Urunler.Urun_Vergi,
    	Katagoriler.Katagori_Aciklama,
    	Sum(Alislar_Islemler_Detay.Alim_Miktar) - Sum(Satislar_Islemler_Detay.Satim_Miktar) AS Stok
    FROM Urunler 
    	LEFT JOIN Satislar_Islemler_Detay 
    		ON Urunler.Urun_Barkod = Satislar_Islemler_Detay.Urun_Barkod
    	LEFT JOIN Alislar_Islemler_Detay 
    		ON Urunler.Urun_Barkod = Alislar_Islemler_Detay.Urun_Barkod
    	LEFT JOIN Katagoriler 
    		ON Urunler.Urun_Tur = Katagoriler.Katagori_Kodu
    GROUP BY Urunler.Urun_Barkod, 
    	Urunler.Urun_Aciklama,
    	Urunler.Urun_Fiyat,
    	Urunler.Urun_Vergi,
    	Katagoriler.Katagori_Aciklama

    hocam bu kod calısmıyor

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lazz
    lazz's avatar
    Kayıt Tarihi: 15/Ekim/2007
    Erkek
    sLeymN bunu yazdı

    valla hocam baktım ama gene aklım almadı

  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ozdemyr
    ozdemyr's avatar
    Kayıt Tarihi: 21/Haziran/2015
    Erkek

    alım veya satım miktarı bilgisi bulamadığında null dönüyor, dolayısıyla (null - 2) as Stok gibi bir ifadenin sonucu da null dönüyor. bu durumda alım veya satım miktarı bilgisi yoksa 0 değeri vermen için isnull, ifnull, coalesce gibi bir fonksiyon kullanman gerek.

    şuna bi göz at http://sqlfiddle.com/#!9/4b5f26/1 (sitedeki sorundan dolayı mysql kullandım ama mssql'de de çalışması lazım)

     

     

     

     

     

     

    ozdemyr tarafından 05/Ağu/16 04:23 tarihinde düzenlenmiştir
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    lazz
    lazz's avatar
    Kayıt Tarihi: 15/Ekim/2007
    Erkek
    sLeymN bunu yazdı

    hocam saolasın  ayık kafayla bakınca bu kod ısımı gordu

    IIF(ISNULL(UnitsOnOrder),0,UnitsOnOrder)

Toplam Hit: 983 Toplam Mesaj: 7
mssql mssql çıkarma işlemi