[Linux-programlama] Re: MySQL IF() performans problemi

---------

[Linux-programlama] Re: MySQL IF() performans problemi

From: Elvin Şiriyev <elvin_at_siriyev.net>
Date: Thu, 5 Mar 2009 13:38:55 +0200
Message-ID: <ded068c00903050338v78ff7d2p34d3529d82490e3a@mail.gmail.com>

SELECT isim, deger, IF (deger=2, "1", "0") AS siralama FROM tablo ORDER BY
siralama DESC

sorgusunu bir de

SELECT isim, deger FROM tablo ORDER BY deger=2

olarak deneyin. uygulamadaki sorguyu gönderirseniz belki önemli düzenlemeler
yapılabilr.

2009/3/5 OKAN <liste_at_ari-tech.com>

> Merhabalar, Mysql uzerinde belli alanlar eger istedigim degerde ise once
> almak icin asagidaki gibi IF deyimli bir sorgu kullanıyorum.
>
> SELECT isim, deger, IF (deger=2, "1", "0") AS siralama FROM tablo ORDER BY
> siralama DESC
>
> Yani deger='2' olan satırları başa alıyorum. Gercek uygulamada bu IF
> degimlerinden 6 adet kullandım ve istedigim veriye ulaşabiliyorum.
>
> Ancak ne yazık ki, bu Mysql için çok pahalı bir yontem, Mysql performansı
> boyle bir sorguda cok kotu bir durum alıyor. (1 sorgu yaklaşık 1sn suruyor
> ve mysql anında yavaşlıyor)
>
> Amacım, belirledigim 6 alanda eger istedigim kayıtlar varsa onları on plana
> almak. Bunu performans sorununu aşarak nasıl başarabilirim?
>
> Şimdiden ilgilenen arkadaşlara teşekkür ederim.
>
> OKAN ARI
>
>
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>

-- 
Elvin Şiriyev
http://siriyev.net

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Thu 05 Mar 2009 - 12:24:51 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.