Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie do 7 tabel na innoDB wykonuje się 20 sekund (!), Co robię nie tak?
L_Devil
post
Post #1





Grupa: Zarejestrowani
Postów: 195
Pomógł: 0
Dołączył: 13.04.2004
Skąd: Łódź

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


Witam. Mam dwie tabele:

Kod
common_parametrs:
+-----+----------+-------------+
| Id  |   name   |    value    |
+-----+----------+-------------+


Kod
user_posters:
+-----+----------+---------
| Id  |   login  |   ...  
+-----+----------+---------


Obie tabele jako InnoDB

  1. SELECT
  2. p.id AS id,
  3. c1.value AS name,
  4. p.login AS login,
  5. c2.value AS version,
  6. c3.value AS pragma,
  7. c4.value AS DATA,
  8. c5.value AS author,
  9. c6.value AS copyrights
  10. FROM common_parametrs AS c1,
  11. users_posters AS p,
  12. common_parametrs AS c2,
  13. common_parametrs AS c3,
  14. common_parametrs AS c4,
  15. common_parametrs AS c5,
  16. common_parametrs AS c6
  17. WHERE c1.name='name' AND c1.owner=p.id AND c2.name='version' AND c2.owner=p.id AND c3.name='pragma' AND c3.owner=c2.owner AND c4.name='data' AND c4.owner=c3.owner AND c5.name='author' AND c5.owner=c4.owner AND c6.name='copyrights' AND c6.owner=c5.owner
  18. ORDER BY c1.value ASC;

Wykonanie tego zapytania trwa dosłownie wieki... dla 96 rekordów do pobrania

Jak temu zaradzić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Bo laczysz te wszystkie tabele ze soba (ukrytymi JOINami)

Nie mozesz po prostu wyciagnac par nazwa,wartosc dla wszystkich parametrow danego usera i zJOINowac to z userem?
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: 10.10.2025 - 10:07