Skip to main content

AccessTr.neT


Sorguda Dsum Fonksiyonun Sql Koduna Dönüştürme

Sorguda Dsum Fonksiyonun Sql Koduna Dönüştürme

#7
(29/12/2024, 19:21)atoykan yazdı: Çalışmıyorsunuz ya da yeteri kadar dikkat etmiyorsunuz Sayın @truhi.
DSUM işlemi ne yapıyor tbl_Mixer tablonuzda tbl_orders tablonuzdaki SozlesmeNo'ya göre toplam alıyor.
Bunu nasıl sorguya çeviririz birincisi bir toplam alacağımız için SUM değerine ihtiyacımız var, nereden alacağımız belli, kriter belli O zaman sadece sorguyu yazmak kalıyor
SELECT SUM(Miktar_1) FROM tbl_Mixer WHERE WHERE tbl_Mixer.Sozlesme_1 = tbl_Orders.SozlesmeNo
Bu sorgu bize tbl_Orders tablosundaki SozlesmeNo alanına eşit olan tbl_Mixer tablosundaki Miktar_1 toplamını verir. bunu Dsum yerine kullanabilirsiniz.
DSUm sorgumuzda nasıl kullanılmış
DSum("[Miktar_1]","tbl_Mixer","[Sozlesme_1] = '" & [SozlesmeNo] & "'") AS Miktar1 yani toplamı Miktar1 adı ile göstermiş, Dsum yerine sorgyu hazırlayabildiysek yer değiştirebiliriz. O halde
(SELECT SUM(Miktar_1) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_1 = tbl_Orders.SozlesmeNo) AS Miktar1 Dsum 'dan farklı olmayacaktır. Buradan hareketle diğer Dsum lar için aynı işlemi yaparsanız sorgunuzun yeni hali
SELECT DISTINCT 
    tbl_Orders.SozlesmeNo,
    (SELECT SUM(Miktar_1) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_1 = tbl_Orders.SozlesmeNo) AS Miktar1,
    (SELECT SUM(Miktar_2) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_2 = tbl_Orders.SozlesmeNo) AS Miktar2,
    (SELECT SUM(Miktar_3) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_3 = tbl_Orders.SozlesmeNo) AS Miktar3,
    (SELECT SUM(Miktar_4) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_4 = tbl_Orders.SozlesmeNo) AS Miktar4,
    (SELECT SUM(Miktar_5) FROM tbl_Mixer WHERE tbl_Mixer.Sozlesme_5 = tbl_Orders.SozlesmeNo) AS Miktar5
FROM
    tbl_Orders;
olur. Biraz daha dikkat, biraz daha gayret lütfen. Bunları artık gözü kapalı çözmeniz gerek.

Haklısınız Hocam,
inşallah sayenizde daha iyi olacağım.
Çok teşekkür ederim.
truhi, 29-09-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#8
Rica ederim.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task