Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> optymalizacja where ... or ...
jarmiar
post
Post #1





Grupa: Zarejestrowani
Postów: 616
Pomógł: 12
Dołączył: 16.07.2006
Skąd: : getCity ( );

Ostrzeżenie: (0%)
-----


Ponoć lepiej rozbić OR w klauzuli WHERE na UNION SELECT, aby zapytanie szybciej się wykonywało.
Przeprowadziłem więc testy. Szybciej wykonywało się zapytanie, w którym w klauzuli WHERE był OR aniżeli to z UNION SELECT.
Czy to rozwiązanie jest optymalne w przypadku dużej ilości rekordów? (testy przeprowadzałem na ok 4 tyś rekordów)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Nie będzie. DLa 4tys nie będzie żadnej różnicy, a nawet jak będzie to będzie to różnica na poziomie milisekund i to nie koniecznie na korzyść union all.

Żeby tu rozwiązać problem to trzeba zobaczyć jakie są indeksy, co zwraca EXPLAIN. Co z tego ze da UNION, jeśli indeksy ma do 4 liter i zamiast jednego wolnego zapytania to z UNION będzie miał dwa wolne zapytania a przez co będzie działało dłużej.

Nie kłóćmy się więc o głupoty tylko poczekajmy na dane.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 13:38