eğer iki alanda birden arama yaptırıyorsanız en hızlısı ikisine composite
index atmak, bu ayrı ayrı atılacak 2 indexten de daha güzel sonuçlar
yaratcaktır.

alter table TTTTT add index INDEXCOMP(XXX,YYY);

bir de hangi kolon un selectivity si fazla ise index i atarken onu öne
koymakta fayda var.

kolay gelsin...

2009/8/26 Nuri Akman <[email protected]>

>  Arkadaşlar,
>
> 2 milyon kayıt bulunan bir veritabanım var.  *XXX *alanına göre indexli.
> Şöyle bir sorgum var:
>
> SELECT * FROM tablo WHERE *XXX *= 123456 AND *YYY *= 5
>
> Bu sorguda, XXX=123456 koşuluma her durumda *en çok* 60 kayıt
> yakalanabilir.
>
> *İlk sorum şu:* Böyle bir durumda *YYY *alanı için de index vermeme gerek
> var mı? MySQL'in önce üzerinde index bulunan alanlar üzerinde çalışması
> gerektiğini düşünüyorum. Böyle olunca ben XXX alanı için kriter verdiğimde
> geriye zaten en çok 60 kayıtlık bir gruptan seçim yapmak kalıyor ki bu da
> zaman almaz diye düşünüyorum. Acaba doğru mu düşünüyorum?
>
> *Son sorum da şöyle: *Yukarıdaki sorgumu SELECT * FROM tablo WHERE *YYY *=
> 5 AND *XXX *= 123456 şeklide yer değiştirerek yapsam cevap süresi değişir
> mi?
>
> Şimdiden teşekkürler...
>
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>


-- 
Serdar Güler
_______________________________________________
Linux-programlama mailing list
[email protected]
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap