Mam 4 tabele: forum_categories, forum_topics, forum_posts

forum_categories:
id_category
name

forum_topics:
id_topic
id_category
time_added
topic
content

forum_posts:
id_post
id_topic
id_category
time_added
content

I Jak zrobic zeby wypisywalo mi topici z danej kategorii i do kazego topicu date ostatniego posta.

Probowalem to zrobic tak, ale nie dziala :/

  1. SELECT (forum_posts.time_added
  2. FROM forum_posts, forum_topics
  3. WHERE forum_topics.id_category = forum_posts.id_category && forum_topics.id_category =1 && forum_topics.id_topic = forum_posts.id_topic
  4. ) AS last_post_time, topic
  5. FROM forum_topics, forum_categories WHERE forum_topics.id_category = forum_categories.id_category && forum_topics.id_category =1 GROUP BY topic;


Wywala mi blad:
Cytat
#1242 - Subquery returns more than 1 row



Jak zrobic poprawne zapytanie do tego??
W sqlu jestem kiepski sad.gif
Z gory dzieki smile.gif

EDIT:
sam znalazlem rozwiazanie :]
  1. SELECT forum_posts.id_topic,max(forum_posts.time_added) AS last_post,forum_topics.topic,forum_posts.id_user, users_new.user_name
  2. FROM forum_posts,forum_topics,users_new WHERE forum_topics.id_user=users_new.id_user && forum_posts.id_topic=forum_topics.id_topic && forum_posts.id_category=$id_category GROUP BY forum_posts.id_topic ORDER BY last_post DESC;