Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Długie wykonywanie zapytania
jol.us_
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 10.12.2003
Skąd: Kraków

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


Lacze dwie tabele: zamowienia i klienci. Zapytanie ma zwracac dane klienta z tabeli "klienci" i sume jego zamowien umieszczonych w tabeli "zamowienia". Calosc musze wykonac jednym zapytaniem bo musze sortowac te dane.


Mam zapytanie SQL ktore dziala poprawnie ale zbyt dlugo wykonuje.
  1. SELECT count(zamowienia.id) AS zamowien FROM klienci LEFT JOIN zamowienia ON (klienci.pin=zamowienia.pin) GROUP BY klienci.pin



Co jest nie tak? Jak przyspieszyc dzialanie zapytania?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
JaRoPHP
post
Post #2





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Masz indeksy na kolumnach: klienci.pin i zamowienia.pin?

Łatwiej analizowałoby się przyczynę wolnego wykonywania zapytania, gdybyś:
- przedstawił strukturę tabel,
- pokazał wynik EXPLAIN:
  1. EXPLAIN SELECT count(zamowienia.id) AS zamowien
  2. FROM klienci LEFT JOIN zamowienia ON (klienci.pin=zamowienia.pin)
  3. GROUP BY klienci.pin


-- EDIT (do postu poniżej)
Struktura tabeli - mam na myśli, co jest kluczem głównym, jakie są indeksy (jeżeli są))
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: 7.10.2025 - 19:54