Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ PILNE ] Zapytanie
Forum PHP.pl > Forum > Bazy danych > MySQL
sheldon
A więc mam takie zapytanie:
  1. SELECT
  2. cms_forum_posts.TITLE AS TOPIC_TITLE,
  3. cms_forum_topics.ID AS TOPIC_ID,
  4. cms_users.LOGIN AS USER_LOGIN,
  5. cms_users.ID AS USER_ID,
  6. cms_forum_posts.DATE AS DATE,
  7. cms_forum_topics.COUNTER AS TOPIC_COUNTER
  8.  
  9. FROM `cms_forum_topics` LEFT JOIN cms_forum_posts ON cms_forum_topics.POST_ID = cms_forum_posts.ID
  10. LEFT JOIN cms_users ON cms_forum_posts.USER_ID = cms_users.ID
  11. ORDER BY cms_forum_posts.DATE DESC

Oczywiście działa ono poprawnie, ale chciałbym jeszcze, aby za jego pomocą można było wyciągnąć:
Ilość postów w danym temacie (teraz mam to jako dodatkowe zapytanie w pętli zapisującej do tablicy wyników (będą one wrzucone do SMARTY później...)):
  1. "SELECT count(*) FROM cms_forum_posts WHERE TOPIC_ID = ".$id_aktualnego_wyswietlanego_topica_na_liscie

To zapytanie powoduje pobranie liczby postów w danym temacie i wyświetla to na liście.
Chciałbym również, aby w tym pierwszym zaptaniu (oprócz tego co jest i liczby postów - o którą proszę) była też data ostatniego posta oraz jego autor.
Czy da się to zrobić żeby wszystko to było w jednym zapytaniu?
DeyV
Jeżeli zależy ci na wydajności, to nie zliczaj dynamicznie ilości postów.
Lepiej, wzorem większości for, zapisywać tą informację podczas dodawnia posta do odpowiedniego topicu, i móc z tej informacji wygodnie korzystać.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.