Zadne nie pomoglo, nawet po moich przerobkach (tymbardziej:P)
Podaje zrzut tabeli:
CREATE TABLE `posts` (
`post_id` int(11) NOT NULL AUTO_INCREMENT,
`post_title` varchar(255) NOT NULL DEFAULT '',
`post_content` text NOT NULL,
`post_add` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`post_forum_id` int(11) NOT NULL DEFAULT '0',
`post_user_id` int(11) NOT NULL DEFAULT '0',
`post_parent_id` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`post_id`),
UNIQUE KEY `post_id` (`post_id`)
) TYPE=MyISAM;
INSERT
INTO `posts` VALUES (1, 'ABC', 'tresc abc', '2005-02-11 00:00:00', 5, 1, 0);
INSERT
INTO `posts` VALUES (2, 'DEF', 'tresc def', '2005-02-08 00:00:00', 5, 2, 0);
INSERT
INTO `posts` VALUES (3, 'GHU', 'tresc ghi', '2005-02-09 00:00:00', 5, 3, 0);
INSERT
INTO `posts` VALUES (4, '', 'odp1 do abc', '2005-02-12 01:07:31', 5, 4, 1);
INSERT
INTO `posts` VALUES (5, '', 'odp1 do def', '2005-02-12 01:08:22', 5, 5, 2);
INSERT
INTO `posts` VALUES (6, '', 'odp2 do abc', '2005-02-12 01:08:55', 5, 6, 1);
Temat ABC ma 3 posty (2 odpowiedzi),
DEF - 2 (1 odpowiedz)
GHI - 1 (brak odpowiedzi)
Wyswietlic, posty wg najnowszej daty, wyswietlajac ostatnia date, ilosc postow i post_user_id ostatniej odpowiedzi
Koniecznie w jednym zapytaniu!
UPDATE:Ulozylem cos takiego, dziala poprawnie:
SELECT p1.post_title, MAX( p1.post_add ) AS newest, IF ( p1.post_parent_id =0, p1.post_id, p1.post_parent_id ) AS parents, COUNT( p1.post_id ) AS posts
FROM posts p1
GROUP BY parents
ORDER BY newest DESC
Wyswietla temat, najnowsza date, id rodzica i liczbe postow, ale nie wiem jak wyciagnac id usera w najnowszych postach