Şimdi Ara

MYSQL YARDIM

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
6
Cevap
0
Favori
1.232
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar merhaba
    c# ta kredi kartı borç takip programı yapıyorum. hesap ekstresini oluşturmak için yazdığım sql cümlesinde sorun yaşıyorum. sonuçların aşağıdaki gibi listelenmesini istiyorum.

    işlem tarihi /// dönem içi işlemler /// kalan taksit sayısı- ?.taksit //// harcama tutar

    harcama_no lar arasında bire çok ilişki vardır

    TABLOLARIM
    harcama
    -------------
    harcama_no (primary key)
    kart_id
    harcama_tutar
    harcama_tarih
    harcama_yer
    harcama_aciklama
    harcama_taksitsay

    harcama_taksit
    ---------------------
    harcama_no (primary key)
    harcama_taksitno
    harcama_taksitmiktar
    harcama_taksittarih


    eğer harcama taksitli ise kalan taksit sayısı sütununa veriler gelecek. tek çekim ise orası boş olacak.
    harcama tutar sütunu ise tek çekim ise harcama tutarı, taksitli ise harcama taksit miktarı gelecek.

    aşağıdaki sorguyu yazdığımda veriler iki tablodan çekildiği için tekrarlı olarak geliyor. bunu engellemek için harcama.harcama_no=harcama_taksit.harcama.no yazdığımda ise taksitli harcamalar geliyor. fakat taksitsiz harcmalar listelenmiyor.

    SELECT IF (harcama_taksitsay=1,harcama_tarih,harcama_taksit.harcama_taksittarih) AS 'İŞLEM TARİHİ',CONCAT(harcama_yer," / ",harcama_aciklama) AS 'DÖNEM İÇİ İŞLEMLER',
    IF (harcama_taksitsay>1,CONCAT( harcama_taksitmiktar," X ",harcama_taksitsay,' -- ',harcama_taksitno,'. Taksit '),' ')AS 'Kalan Borç / Taksit',
    IF (harcama_taksitsay>1, harcama_taksitmiktar,harcama_tutar)AS 'TUTAR(TL)'
    FROM harcama,harcama_taksit
    WHERE kart_id='5' AND IF (harcama_taksitsay>1,(harcama_taksittarih BETWEEN '2012-08-04' AND '2012-09-04'), (harcama_tarih BETWEEN '2012-08-04' AND '2012-09-04'))



     MYSQL YARDIM


     MYSQL YARDIM



    < Bu mesaj bu kişi tarafından değiştirildi gs_semih -- 20 Eylül 2012; 18:56:45 >







  • Verileri tam olarak nasıl tuttuğunu anlamadım.
    Eğer taksitsiz bir alışveriş yapılırsa taksit tablosunda tek kayıt, taksitli alışveriş olursa çok kayıt mı oluyor? Yani taksitsiz alışverişi 1 taksit gibi mi değerlendiriyorsun?

    Bir de tabloları ve verileri sql dump alıp koyabilir misin buraya?
  • taksitsiz alışverişler sadece harcama tablosuna kayıt oluyor. taksitli alışverişlerin ise genel bilgileri harcama tablosuna diğer taksit miktarları ve taksitlerin hesaptan kesileceği tarihler harcama_taksit tablosuna kayıt oluyor. örn. olarak 3 taksitli bi alışverişin harcama yer toplam tutar gibi bilgileri harcama tablsouna, diğer her taksiti ayrı bir kayıt olarak harcama taksit tablsouna kayıt oluyor. sql dosyasını rapid e upload ettim. yardımcı olursanız sevinirim.

    https://****.com/files/981910464/kredi_kart.sql;9190;0;
    https://****.com/files/981910464/kredi_kart.sql;9190;0;

    https://%2A%2A%2A%2A.com/files/981910464/kredi_kart.sql;9190;0;

    rapidshare.com/#!download|642p2|981910464|kredi_kart.sql|9|0|0



    < Bu mesaj bu kişi tarafından değiştirildi gs_semih -- 20 Eylül 2012; 23:46:09 >




  • SELECT  
    IF (harcama_taksitsay=1,harcama_tarih,harcama_taksit.harcama_taksittarih) AS 'İŞLEM TARİHİ',
    CONCAT(harcama_yer," / ",harcama_aciklama) AS 'DÖNEM İÇİ İŞLEMLER',
    IF (harcama_taksitsay>1,CONCAT( harcama_taksitmiktar," X ",harcama_taksitsay,' -- ',harcama_taksitno,'. Taksit '),' ')AS 'Kalan Borç / Taksit',
    IF (harcama_taksitsay>1, harcama_taksitmiktar,harcama_tutar)AS 'TUTAR(TL)'
    FROM harcama LEFT JOIN harcama_taksit ON (harcama.harcama_no = harcama_taksit.harcama_no)
    WHERE
    kart_id='5' AND
    IF (harcama_taksitsay>1,(harcama_taksittarih BETWEEN '2012-08-04' AND '2012-09-04'), (harcama_tarih BETWEEN '2012-08-04' AND '2012-09-04'))


    Sanırım bu aradığın şey? Nasıl olduğunu anlamazsan sorabilirsin.
  • Teşekkür ederim. Daha önce join i denemiştim ama from dan harcama_taksit tablosunu silmediğimden hata alıyodum. hatamı gördüm tekrardan teşekkür ederim.
  • Mysql Danışmanlık Hizmeti

    Mysql database yönetim ve optimizasyonunda dünya çapında uzmanlaşmış destek.

    Veri tabaninin periyodik kontrollerinin yapilmasi,
    Veri tabani güncelleme ve yama uygulama çalismalarinin yapilmasi,
    Veri tabani performansinin takip edilmesi ve optimizasyon çalismalarinin yapilmasi,
    Veri tabaninin yedekleme ve geri dönüs islemleri için prosedürlerin olusturulmasi ve kurtarma yöntemlerinin gelistirilmesi,
    Gerektiginde alinan yedeklerden sistemin dönülmesi (restore) veya karsilikli belirlenecek periyodlarda test amaçli olarak verinin bir sistemden digerine aktarimi (clone),
    Uyari mekanizmalarinin olusturulmasi ve uyarilarin sorumlu müsteri veritabani yöneticilerine mail ve sms yoluyla anlik olarak iletilmeleri,
    Veri tabani performans gözlem raporlarinin incelenmesi,
    Yeni sistemlerde veri tabani sizing çalismasinin yapilmasi ve mevcut sistemler için ilerideki olasi kapasite arttirimi senaryolarinda danismanligin verilmesi.

    www.mysqlturkiye.com




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.