Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Union ALL czy kilka zapytań?
puc
post 12.07.2010, 11:41:57
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

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


witam, zastanawiam się nad tym co będzie bardziej wydajne. Mam do wyciągnięcia rekordy z podziałem na statusy (powiedzmy mam 7 roznych statusów i musze wyciagnąć 5 pierwszych rekordów ze statusem 1 i 2, pozniej 3 i 4, oraz 5, 6 i 7). Czy w takim wypadku wydajnieszy będzie UNION ALL i wykonać to jako 1 zapytanie (jest dość obszerne - ok 8 left joinow, duzo warunkow, roznia sie tylko tymi statusami), czy może wykonać 3 zapytania??
Go to the top of the page
+Quote Post
erix
post 12.07.2010, 11:48:51
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A co EXPLAIN Ci mówi?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Mchl
post 12.07.2010, 11:49:26
Post #3





Grupa: Zarejestrowani
Postów: 855
Pomógł: 145
Dołączył: 17.07.2008
Skąd: High Memory Area

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


Nie powinno być większej różnicy. W końcu UNION ALL też wykonuje wszystkie zapytania i dodatkowo skleja wyniki (nawet nie filtruje duplikatów). Co innego jeżeli chciałbyś wykorzystać query cache. Wtedy jeżeli poszczególne zapytania odwołują się do rożnych tabel, to 'mniejsze' podzapytania indywdidualne mają mniejszą szansę na przeterminowanie niż UNION.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 03:18