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

  • Canal de arkyoru

    Canal de ark

    18 Ocak 2007
  • Doug Bernards

    Doug Bernard

    7 Kasım 2007
  • NextGenWindows

    NextGenWindo

    8 Kasım 2011