![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 31.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, jest takie zapytanie które trwa 15 sek (wariant z "ORDER BY tab1.id"), jak zamienię zapytanie aby sortowało się wg. tab2.id to trwa ono 6 sek (wariant z "ORDER BY tab2.id").
Po ustawiałem wszystkie indeksy: tab2 (id,type,del,version) tab1(id). Niestety muszę korzystać z "ORDER BY tab1.id" Choć tab1.id=tab2.id.
Ten post edytował someone.cool 30.10.2009, 22:39:31 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A jakie indeksy Waść posiada?
-------------------- ![]() 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! |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 31.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
ustawiam indeksy zawsze tam gdzie używam tabeli w WHERE...
Po ustawiałem indeksy: tab2 (id,type,del,version) tab1(id) . edit: może pytaniem powinno być - czy index na tabeli `tab2` ma być jeden, czy 3 osobne? Ten post edytował someone.cool 2.11.2009, 13:14:55 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
-------------------- ![]() 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! |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 7.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Polecałbym stworzyć więcej dodatkowych pól w tabeli, jeśli to możliwie i pozbyć się left join, bardzo wolna rzecz.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 31.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wracamy do tematu. Tab1 jest tu najważniejsza - jest to rejestr rekordów (np. kolumna13 - czy usunięty?, kolumna_5 - typ dokumentu, kolumna_11 - firma).
Tab2 to już właściwa tabela dokumentu. tab1 ma 150 000 rekordów. Z order by potrafi sie wykonywać czasami AŻ 2,5 minuty, a bez tego 0,015 sek ![]()
Ten post edytował someone.cool 19.11.2009, 12:08:20 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
a co pokazuje magiczne explain?
-------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 31.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
nie za bardzo umiem odczytać co tam jest napisane.
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 31.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 9 Dołączył: 22.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
To ja ze swojej strony zapytam się z jakiego ENGINE korzystasz w przypadku tych tabel ? I czy wszystkie te tabele które JOINujesz mają ten samy typ.
Dodatkowo mógłbyś pokazać na których kolumnach masz indexy pozakładane. Zbyt duża ilość indexów też może sprawiać problemy. Dorzuć to co zwraca EXPLAIN + dla każdej to może pomożemy konkretniej. Teraz to są zgadywanki i strzały w ciemno |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 01:08 |