![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 1 Dołączył: 11.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Po wielu próbach udało mi się napisać zapytanie które spełnia wszystkie moje warunki i wyświetla wszystkie potrzebne dane: Przykład z wszystkimi warunkami i uzupełnionymi danymi
Wszystko było by ładnie pięknie ale strona się ładuje bardzo długo Czy pomoże mi ktoś to ogarnąć ? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 40 Dołączył: 23.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
tutaj temporary jest potrzebne dla sortowania. koniec kropka.
nie jest ważne ile masz tam rekordów (10 czy 1k) zauwaz ze jest tutaj razem z filesort, jest to potrzebne do wykonania tej operacji. tutaj, po wielu filtrowaniach/relacjach itp. silnik wybral odpowiednie rekordy z wielu źródeł. ostatnią operacją jest posortowanie tego i zwrot. by to wykonać - silnik pakuje to do tempa i wykonuje sortowanie (order by)i porcjowanie (limit) zauważ, że ilekroć będziesz używał order by - będziesz miał w explainie: using temporary (przynajmniej wiecej niz 90%, dla joinowanych tabel) to ze tutaj da sie przebudować to zapytanie? zgoda! ze da się napisać lepiej? jasne! czy da się uniknąć tempa? niekoniecznie. poza tym jak napisałem, póki wielkość danych w tempie nie przekracza wartości krytycznej - (tzn nie wymusza zapisu na dysk) to wielka tragedia się nie dzieje. dlatego powinno się maksymalnie ograniczać ilość wierszy i kolumn. j. edit: literówka Ten post edytował alegorn 19.07.2012, 16:08:52 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 20:02 |