Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/02/2007, 17h20   #1
Invité de passage
 
Inscription : février 2007
Messages : 7
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 7
Points : 2
Points : 2
Par défaut [SQL] Système gestion dernier message + nombres sujets/réponses

Bonjour mon problème est le suivant :

J'ai une liste de forums.
Chaque forum a des sujets, et chaque sujet a des réponses.

J'aimerais savoir la façon la plus optimisé de stoquer et ensuite récupérer les informations suivantes :
- Dernier sujet / réponse sur un forum
- Nombre de sujet / réponse sur un forum

Merci d'avance =)
Dinan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2007, 17h23   #2
Membre éclairé
 
Inscription : août 2006
Messages : 379
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : août 2006
Messages : 379
Points : 383
Points : 383
Et dans la langue de Molière cela donne ?
SpiritOfDoc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2007, 23h59   #3
Membre chevronné
 
David DRAPEAU
Consultant OpenERP
Inscription : juin 2003
Messages : 807
Détails du profil
Informations personnelles :
Nom : David DRAPEAU

Informations professionnelles :
Activité : Consultant OpenERP

Informations forums :
Inscription : juin 2003
Messages : 807
Points : 728
Points : 728
Envoyer un message via MSN à zyongh Envoyer un message via Skype™ à zyongh
Par défaut date BIGINT

tu crées un champ dans la table qui va récupérer la date d'envoi du message/réponse sous forme de BIGINT. Puis quand tu veux récupérer le dernier message/réponse tu mets à la fin de ta requête SQL:

DESC signifie DESCENDANT (décroissant) à l'inverse de ASC qui signifie ASCENDANT (croissant). Donc tu auras la date la plus récente en premier et par là même, le dernier message/réponse posté(e).
zyongh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2007, 21h45   #4
Invité de passage
 
Inscription : février 2007
Messages : 7
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 7
Points : 2
Points : 2
Code sql :
1
2
3
4
5
6
7
SELECT g.id AS g_id, b.id AS b_id, g.title AS g_title, b.title AS b_title, b.body, COUNT(t.id) AS nb_t, COUNT(m.id) AS nb_m, t.title AS t_title, t.id AS t_id, m.id_user AS m_id_user, m.id AS m_id
FROM ilya_board AS b
INNER JOIN ilya_board_group AS g ON (b.id_group=g.id)
LEFT JOIN ilya_topic AS t ON (t.id_board=b.id)
LEFT JOIN ilya_message AS m ON (m.id_topic=t.id)
GROUP BY b.id
ORDER BY g.ORDER ASC, b.ORDER ASC, t.uptime DESC

c'est ce que j'ai fait, mais il ordonne pas ...
Dinan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2007, 09h09   #5
Membre chevronné
 
David DRAPEAU
Consultant OpenERP
Inscription : juin 2003
Messages : 807
Détails du profil
Informations personnelles :
Nom : David DRAPEAU

Informations professionnelles :
Activité : Consultant OpenERP

Informations forums :
Inscription : juin 2003
Messages : 807
Points : 728
Points : 728
Envoyer un message via MSN à zyongh Envoyer un message via Skype™ à zyongh
Citation:
Envoyé par Dinan
Code sql :
1
2
3
4
5
6
7
SELECT g.id AS g_id, b.id AS b_id, g.title AS g_title, b.title AS b_title, b.body, COUNT(t.id) AS nb_t, COUNT(m.id) AS nb_m, t.title AS t_title, t.id AS t_id, m.id_user AS m_id_user, m.id AS m_id
FROM ilya_board AS b
INNER JOIN ilya_board_group AS g ON (b.id_group=g.id)
LEFT JOIN ilya_topic AS t ON (t.id_board=b.id)
LEFT JOIN ilya_message AS m ON (m.id_topic=t.id)
GROUP BY b.id
ORDER BY g.ORDER ASC, b.ORDER ASC, t.uptime DESC

c'est ce que j'ai fait, mais il ordonne pas ...
Code :
ORDER BY g.ORDER ASC, b.ORDER ASC, t.uptime DESC
Tu aurais pas oublié tes champs derrière les alias de tables? dans le genre:
Code :
ORDER BY g.nomchampg ASC, b.nomchampb ASC, t.uptime DESC
C'est juste une question comme ça par hasard...
__________________
Expertise OpenERP - programmation PHP/MySQL
toujours à l'écoute du marché
zyongh est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h19.


 
 
 
 
Partenaires

Hébergement Web