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