voila, je suis en train de faire un forum, et j'ai quelques petit problemes avec ma requete pour recuperer les categories, et pour chaque categorie, la date du dernier message la concernant.
voici ma base de donnée (à celui-ci s'ajoute une table utilisateur, mais elle n'est pas utile)
j'ai cette requete pour l'instant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 CREATE TABLE `frm_category` ( `id_cat` int(11) NOT NULL default '0', `name` varchar(30) NOT NULL default '', `id_parent` int(11) NOT NULL default '0' ) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE `frm_post` ( `id` int(11) NOT NULL auto_increment, `id_author` int(11) NOT NULL default '0', `id_parent` int(11) NOT NULL default '0', `title` varchar(60) NOT NULL default '', `text` text NOT NULL, `category` int(11) NOT NULL default '0', `is_mp` int(11) NOT NULL default '0', `crea_date` int(11) NOT NULL default '0', `mod_date` int(11) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
et bien sur, cela ne marche pas... la date renvoyée est celle du premier post... alors que je veux le dernier... je ne sais pas comment faire (à part faire une 2eme requete bien sur...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 SELECT c.id_cat as cat,c.name, count(p.category) as nbre_post,p.crea_date FROM frm_category as c LEFT OUTER JOIN frm_post as p ON (c.id_cat = p.category) WHERE c.id_parent=0 GROUP BY c.id_cat,c.name ORDER BY c.id_cat,p.crea_date DESC;
j'ai oublié de donner ma version de mysql
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mysql Ver 14.7 Distrib 4.1.14, for pc-linux-gnu (i686) using readline 5.0
Partager