Arkadaşlar,

MySQL'de listeler adlı bir tablom var ve islem_tarihi adlı alan için index
tanımım var. Tabloda 250.000+ kayıt var.

SQL1 sorguma 5431 kayıt geliyor ve süre: 0.027 saniye,
SQL2 sorguma 5570 kayıt geliyor ve süre: 3.510 saniye (130 kat daha yavaş !)

SQL1 :   SELECT * FROM listeler WHERE islem_tarihi between '2010-09-20' AND
'2010-12-31'
SQL2 :   SELECT * FROM listeler WHERE islem_tarihi between '2010-09-19' AND
'2010-12-31'

Çalışan SQL'i analiz ettiğimde:
SQL1 için sadece 5431 satırı işlendiğini görüyorum
SQL2 için tablonun tüm satırlarının (250.000 satırın hepsinin) işlediğini
görüyorum. Yani, index devre dışı kalıyor :(

Bu durumun MySQL'in server parametrelerinden birinden kaynaklı olduğunu
düşünüyorum. Fakat bulamadım...

Bu durumu nasıl düzeltebilirim?

Selamlar,
Nuri Akman
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap