Temat: [pytanie laika] Jak stworzyć prawidłowe zapytanie SELECT
Witam,przyznam się, że moja wiedza nt. MySql jest trochę laicka, więc pytanie może wydać się banalne...
mam dwie tabele:
1) z wpisami
2) z informacją, jaki wpis jest wyróżniony i w jakim okresie
potrzebuję wyświetlić listę wpisów, z tym, że na początku chcę mieć wpisy, które są dziś wyróżnione.. posortowane według ilości punktów wyróżnienia i daty dodania wpisu
stworzyłem takie zapytanie:
SELECT o.*, (SELECT SUM(w.punkty) AS sumapunktow FROM w WHERE w.wpis_id=o.wpis_id AND (w.data_start<='2009-07-02' AND w.data_koniec>='2009-07-02') ) AS punkty FROM o,w WHERE kategoria_wpisu='12' GROUP BY wpis_id ORDER BY punkty DESC, o.data_dodania DESC
w bazie 'o' mam 300 tys. rekordów, w bazie 'w' 500 rekordów..
przy takiej formie SELECT czas wykonania polecenia wynosi... 60 s
Jak to inaczej napisać?
proszę o sugestie
w.