SORU
11 Ocak 2010, PAZARTESİ


MySQL Sorgu - Bugün ve Son 30 Gün arasında Kayıtlarını

Son 30 gün içinde veritabanına eklenen tüm kayıtları döndürmek istiyorum. Tarih yy görüntüleme amaçları yüzünden/dd/mm dönüştürmek istiyorum.

create_date between DATE_FORMAT(curdate(),'%m/%d/%Y') AND (DATE_FORMAT(curdate() - interval 30 day,'%m/%d/%Y')) 

İfademi son 30 gün kayıtları sınırlamak için başarısız - tüm kayıtları seçer.

Herkes doğru yönde bana gelin miyim? Yaklaştım gibi hissediyorum.

Teşekkürler ve harika bir hafta var.

CEVAP
11 Ocak 2010, PAZARTESİ


SELECT fıkra DATE_FORMAT uygulamak gerekir WHERE fıkra:

SELECT  DATE_FORMAT(create_date, '%m/%d/%Y')
FROM    mytable
WHERE   create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()

Ayrıca unutmayın CURDATE() indirim DATE bölümünü tarihi bir deposu create_date DATETIME zamanın bir bölümünü doldurdu, bu sorgu olmaz select bugünün kayıtları.

Bu durumda, NOW yerine kullanmanız gerekir:

SELECT  DATE_FORMAT(create_date, '%m/%d/%Y')
FROM    mytable
WHERE   create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EEVblog

    EEVblog

    4 NİSAN 2009
  • mobilenet.cz

    mobilenet.cz

    26 NİSAN 2008
  • TWiT Netcast Network

    TWiT Netcast

    27 EKİM 2005