Selamlar, MySQL in sistem parametrelerinde dolayı index devre dışı kalmaz, index in kullanılıp kullanılmayacağına karar veren mekanizma optimizer , eğer inde i kullanmasının full table scan e göre daha iyi olacağını düşünüyorsanız. USE INDEX, FORCE INDEX gibi hintlerle SQL i zenginleştirebilirsiniz.
Kolay gelsin... 2010/9/24 Baris CUHADAR <[email protected]> > Tarihleri integer - unixtimestamp olarak saklamanız, index büyüklüğünüzü > azaltıp, indexleme zamanını kısaltıp, ayrıca sıralama işlemlerini > kolaylaştırabilir. > > integer 4 byte, datetime 8 byte yer kaplıyor. > > Bu işlemler program kodunuzu değiştirmenizi gerektirecektir. > > > On 09/24/2010 02:11 AM, Nuri AKMAN wrote: > > 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 > [email protected]https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > -- Serdar Güler
_______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
