Skip to main content

AccessTr.neT


Belirli bir müşterinin ay ve yıla göre devirli bakiyesini bulma

Belirli bir müşterinin ay ve yıla göre devirli bakiyesini bulma

Çözüldü #7
Konum biraz ilgi çeksin. Kalmış kuytu köşelerde. Img-grin
Konuya giren arkadaşın yukarıdaki mesajımı incelemesini ve yardım etmesini rica ediyorum.
Cevapla
Çözüldü #8
Tek sorgu ile de yapılabilirdi ancak 2 sorgu ile yapmak daha basit ve sanırım daha hızlı.
Ne kadar basit o kadar iyi.

AylikBakiye adlı sorgu istediğiniz sonucu veriyor.

AylikBakiye_AyYil:
Kod:
SELECT TRANSACTIONS.account_id, Month(transaction_date) AS balance_month, Year(transaction_date) AS balance_year
FROM TRANSACTIONS
GROUP BY TRANSACTIONS.account_id, Month(transaction_date), Year(transaction_date);

AylikBakiye:
Kod:
SELECT AylikBakiye_AyYil.account_id, AylikBakiye_AyYil.balance_year, AylikBakiye_AyYil.balance_month, DSum("[transaction_amount]","TRANSACTIONS","[account_id]=" & [account_id] & " And (Year([transaction_date])<" & [balance_year] & " Or (Year([transaction_date])=" & [balance_year] & " And Month([transaction_date])<=" & [balance_month] & "))") AS monthly_balance
FROM AylikBakiye_AyYil
ORDER BY AylikBakiye_AyYil.account_id, AylikBakiye_AyYil.balance_year, AylikBakiye_AyYil.balance_month;

.rar Internet_Banking_Seruz.rar (Dosya Boyutu: 16,43 KB | İndirme Sayısı: 40)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #9
(21/12/2009, 13:54)Seruz yazdı: Tek sorgu ile de yapılabilirdi ancak 2 sorgu ile yapmak daha basit ve sanırım daha hızlı.
Ne kadar basit o kadar iyi.

AylikBakiye adlı sorgu istediğiniz sonucu veriyor.

AylikBakiye_AyYil:
Kod:
SELECT TRANSACTIONS.account_id, Month(transaction_date) AS balance_month, Year(transaction_date) AS balance_year
FROM TRANSACTIONS
GROUP BY TRANSACTIONS.account_id, Month(transaction_date), Year(transaction_date);

AylikBakiye:
Kod:
SELECT AylikBakiye_AyYil.account_id, AylikBakiye_AyYil.balance_year, AylikBakiye_AyYil.balance_month, DSum("[transaction_amount]","TRANSACTIONS","[account_id]=" & [account_id] & " And (Year([transaction_date])<" & [balance_year] & " Or (Year([transaction_date])=" & [balance_year] & " And Month([transaction_date])<=" & [balance_month] & "))") AS monthly_balance
FROM AylikBakiye_AyYil
ORDER BY AylikBakiye_AyYil.account_id, AylikBakiye_AyYil.balance_year, AylikBakiye_AyYil.balance_month;


İlginiz ve yardımınız için teşekkürler. Sorum cevaplanmıştır.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task