Tabi dediklerinize katılıyorum.
>>sorguyu yazarken x = 'aaa' and y='bbb' yazmanız ile y='bbb' and x =
'aaa' yazmanız arasında bir fark yoktur. zira her mysql sorgusu
öncelikle bir optimizer dan geçer.
Bunuda öğrenmiş oldum.
--- 27/08/09 Per tarihinde serdar güler şöyle
yazıyor:
Kimden:
Aslında son email durumu özetliyor ama ben de biraz durumu açıklamaya
çalışayım.
__set ve __get metodları php için yarattığımız tüm objelerde bulunan
magic metodlardır. Bunların haricinde bir kaç magic metod daha var. __set
metodu bir objenin olmayan bir attribute'üne bir şey atamak istediğiniz
tekrar edeyim :
benim bahsettiğim şey sorgunun yapılması ile değil index in atılması ile
ilgilidir.
sorguyu yazarken x = 'aaa' and y='bbb' yazmanız ile y='bbb' and x = 'aaa'
yazmanız arasında bir fark yoktur. zira her mysql sorgusu öncelikle bir
optimizer dan geçer.
ancak index i atarken
alte
130.000 kayıtlı bir tabloda indexli alan ile indexsiz alanlardan select yaptım.
sırasını değiştirdim. toplam 20 sorgu yaptım. indexli önce olunca
ortalama 0.083 gibi bişey çıktı. indexli arkada olunda 0.086 gibi bişey
çıktı.
Bu o andaki vertabanı sogrularının yoğunluğumu yoksa her birini 10 tane
benim bahsettiğim şey sorguyu yaparken değil index i atarken sıralamanın
yapılması ile ilgili.
2009/8/27 Altan Tanrıverdi
> Veritabanı motorları sorguyu gerçekleştirmeden önce sorgunuzu kendi
> sırlarına göre optimize ederler zaten. Bu ifade için birşey değişmez..
>
>
> 2009/8/27 Özgür KOCA
>
>
Düşündüğünüz şey mantıklı gibi gözüküyor. Doğruluğunu test etmek için
WHERE *YYY *= 5 AND *XXX *= 123456 ve WHERE *XXX *= 123456 AND *YYY *= 5
sorgularının çalışma sürelerini karşılaştırmak lazım.
Özgür Koca
http://tankado.com/
___
Linux-programlama m
> ben login mesajını gönderince threadA daki aynı yordam içerisinde
> gelen cevabı beklemeye başlamak istiyorum.
pek iyi bir fikir değil, onun yerine B gelen veri yönetimini yapabilir
böylece B sadece pool'larken herkes (A dahil) her hangi bir anda
gelmiş olan verilere ulaşabilir/değiştirebilir.
Olayı Elvin'le analiz ettik aslında __set veya __get normal diğer methodlar gibi
override olmuyor daha çok override ettiğimiz olay exception durumları.
yani a->olmayanDegisken=5;
durumunda override ettiğiniz __set çalışıyor çünkü a sınıfında olmayanDegisken
isminde bir öğe mevcut değil
aynı şekil