• 28-11-2013, 11:45:49
    #1
    Merhaba Arkadaşlar ,

    MYSQL'de bulunan tarihler aşağıdaki gibidir.

    gidis_tarihi cikis_tarihi fiyat
    01-01-2014 09-01-2014 10
    11-01-2014 15-01-2014 15
    16-01-2014 20-01-2014 20

    Yukarıdaki gibi veriler mevcuttur.

    between kullanarak tarihler arasındaki fiyatları toplayabilirim. Fakat burada bir ayrıntı var. Eğer sql'de o tarihler aralagında bir veri yoksa almasın.

    Örnek verecek olursak:

    Göndermiş oldugum tarih aralıkları şunlar olsun :
    giriş : 11-01-2014
    çıkış : 17-01-2014
    Eğer yukarıdaki gibi tarihleri yazarsam fiyatları toplanıyor düzgün bir şekilde. Problem yok burada.

    Problem eğer şu tarih aralıgını girersem oluyor.
    giriş : 07-01-2014
    çıkış : 14-01-2014

    between ile yine topluyorum bunları fakat arada bir gün eksik. 10-01-2014 tarihi databaste'deki tarihlerin arasında yer almıyor. Burada sonuç çıkmamasını istiyorum.

    Nasıl olabilir.

    http://sqlfiddle.com/#!2/8cb015/19
  • 28-11-2013, 15:59:49
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    tarih formatını yanlış kullanıyosun. böyle yaparsan hep yanlış işler yaparsın

    - tarih formatın 2013-11-28 01:23:59 şeklinde olacak.
    - mysql da tarih için datetime formatını kullan

    sorgularında

    select * from tablo where gidis_tarihi > '$tarih1' and cikis_tarihi < '$tarih2'

    olarak yap. ekrana bastırdığın tarihi yine istediğin formatta gösterirsin.

    <?=date("d-m-Y",strtotime('2013-11-28 01:23:59'))?>
  • 28-11-2013, 19:18:44
    #3
    pyromus adlı üyeden alıntı: mesajı görüntüle
    tarih formatını yanlış kullanıyosun. böyle yaparsan hep yanlış işler yaparsın

    - tarih formatın 2013-11-28 01:23:59 şeklinde olacak.
    - mysql da tarih için datetime formatını kullan

    sorgularında

    select * from tablo where gidis_tarihi > '$tarih1' and cikis_tarihi < '$tarih2'

    olarak yap. ekrana bastırdığın tarihi yine istediğin formatta gösterirsin.

    <?=date("d-m-Y",strtotime('2013-11-28 01:23:59'))?>
    Zaten formatı yanlış yapsam tarihleri database kayıt edemezdim. Anlaşılır olsun diye yazdım sadece.