SELECT c.`name` as catname, c.`safe_name` catsname, c.`id` as catid, f.`name`, f.`safe_name`, f.`id` as forumid, t.`id`, t.`title`, t.`updated`, u.`name` as last_user, t.`date`FROM `kb_categories` c LEFT OUTER JOIN `kb_forums` f ON f.`catid` = c.`id`LEFT OUTER JOIN (`kb_topics` t LEFT OUTER JOIN `kb_users` u ON t.`userid` = u.`id`) ON f.`id` = t.`forumid` AND t.`updated` = (SELECT MAX(t.`updated`) FROM `kb_topics` t WHERE t.`forumid` = f.`id`)ORDER BY c.`posid`, f.`posid` ASC, t.`updated` DESC