![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 16.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
dostałem ostatnio od administratora wiadomość, że pewne zapytanie generuje duże obciążenie.
ktoś ma pomysł na to, bo nie bardzo się orientuje w temacie? Ten post edytował nc715 5.10.2012, 23:19:23 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Brakuje najważniejszych informacji: jak wygląda EXPLAIN zapytania oraz jakie indeksy założone na tabelach. Poza konkursem: ile czasu wykonuje się to zapytanie i ile rekordów w tabelach
Na podstawie samego zapytania można stwierdzić, że indeksy muszą być założone na polu 'id_order' w obu tabelach, pewnie w jednej jest to primary Naprawdę potrzebujesz wszystkich pól skoro jest SELECT *. I jakie to zapytanie ma wyciągnąć dane? Bo coś nie podoba mi się ORDER BY o.ordered_date DESC, prawdopodobnie można sortować po 'id_order' |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zapytanie jest źle napisane . Powinno być:
Indexy (KEY-e) na: o.id_order, op.id_order, o.ordered_date Ten post edytował mmmmmmm 5.10.2012, 22:07:03 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 16.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedź
zamiast * , wyszczególniłem konkretne pola i z 65 pól zostało mi 16 ; ) Czy to oznacza, że zapytanie powinno się wykonywać 4x szybciej teraz? |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 43 Dołączył: 9.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 17:40 |