Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> optymalizacja select, 26 sek.!?!?
wrebus
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 3.04.2002
Skąd: Kielce

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


Prosiłbym o pomoc w optymalizacji zapytania wyszukującego:
  1. SELECT zdjecia.id, zdjecia.nazwa, zdjecia.id_plyta
  2. FROM zdjecia WHERE zdjecia.id IN (SELECT klucze_zdjecia.id_zdjecie
  3. FROM klucze_zdjecia WHERE klucze_zdjecia.id_klucz IN (SELECT id
  4. FROM klucze WHERE klucze.nazwa LIKE '%krowa%'))

wykonanie tego zapytania trwa 26 sek.(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !!
mam w bazie 1300 zdjec, 160 kluczy i 2000 powiazan kluczy i zdjec.
moze cos poradzicie jak to lepiej napisac?

Ten post edytował wrebus 23.11.2005, 11:51:37
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Do tego zapytania co podal @ActivePlayer dodaj indeksy na pola zlaczeniowe i ktore uzywasz w WHERE.

Jesli zapytanie dalej bedzie tak dlugo dzialalo to mozesz wrocic do swojej wersji ale w ten sposob ze od pozdzapytan zwracasz zawsze jak najmniejsza liczbe rekordow. I najwazniejsze to zrob explain plan i zobaczysz co masz nie tak.
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: 16.10.2025 - 08:21