Merhaba Serdar Bey, select * from listeler *force index ( xxxx_islem_tarihi )* where islem_tarihi between "2010-08-10" and "2010-12-31"
Tavsiyeniz üzerine yukarıdaki şekilde yapılca index devreye girdi. Teşekkürler. Ancak, USE INDEX ile sonuc alamadım. (islem_tarihi alanına xxxx_islem_tarihi adı ile index verdiğim için force index'e bunu yazdım.) DİĞER TARAFTAN: SİZCE, DİĞER SUNUCU PARAMETRELERİM DOĞRU MU? SİZLER NE ÖNERİRSİNİZ? Selamlar, Nuri Akman 2010/9/24 serdar güler <[email protected]> > 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 > >
_______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
