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

  • Friday Night Cranks

    Friday Night

    27 Mayıs 2007
  • Sams Page :D

    Sams Page :D

    15 Mart 2009
  • The Brister

    The Brister

    10 ŞUBAT 2008