SORU
31 Aralık 2012, PAZARTESİ


MySQL gün (ve mutlaka zaman)eşleştiği SEÇİN

Bir datetime sütun içeren bir tablo var. Belirli bir günde tüm kayıtlar zaman ne olursa olsun dönmek istiyorum. Ya da başka bir deyişle, Eğer benim tablo sadece aşağıdaki 4 kayıtları içeriyorsa, o zaman 2 ve 3 yalnızca 2012-12-25 ben sınırı ise iade olur.

2012-12-24 00:00:00
2012-12-25 00:00:00
2012-12-25 06:00:00
2012-12-26 05:00:00

CEVAP
31 Aralık 2012, PAZARTESİ


ASLA VE ASLADATE(datecolumns) = '2012-12-24' performanslı bir katil gibi: seçici kullanın

  • maçı olmayanlar da dahil olmak üzere tüm satırlar için DATE() hesaplamak olacaktır
  • imkansız sorgusu için bir dizin kullanmak için yapacaktır

Çok daha hızlı kullanmak için

SELECT * FROM tablename 
WHERE columname BETWEEN '2012-12-25 00:00:00' AND '2012-12-25 23:59:59'

bu hesaplama olmadan dizin kullanmak izin verir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ecf150king

    ecf150king

    20 Ocak 2006
  • gsmaestro

    gsmaestro

    17 AĞUSTOS 2006
  • ShoSho

    ShoSho

    20 Ocak 2010