Left Join et maximum - SQL/NoSQL - Programmation
Marsh Posté le 24-06-2005 à 10:53:59
Code :
|
Marsh Posté le 24-06-2005 à 11:22:16
j'peux pas tester là de suite mais je crain que la requete ne fournisse plus aucun resulat car MAX(m.date) sera egale au maximum de tous les champs de la table soit "le" dernier message posté et pas uniquement le dernier message posté pour le thread en question
Marsh Posté le 24-06-2005 à 11:41:22
Non, c'est à ca que sert un group by. il va determiner le max pour chaque id, titre, statut.
Marsh Posté le 24-06-2005 à 18:36:43
Helas c'est bien ce que je pensais, si je rajoute having je n'ai pas de résultat.
On dirait que le MAX(m.date) prend le maximum de la table complete.
Une autre idée ?
Merci d'avance
Marsh Posté le 24-06-2005 à 19:40:35
Tu peux créer une table temporaire dans laquelle tu stoques la dernière date de message pour chaque forum.
Ensuite, tu fais la jointure qui va bien sur cette table pour récupérer le reste.
Marsh Posté le 24-06-2005 à 19:46:31
ha interessante solution comment utilise t on les tables temporaires en mysql ? Je sais utiliser les views en SQL mais en mysql ... ?
Marsh Posté le 24-06-2005 à 21:55:23
CREATE TEMPORARY TABLE toto( ....
La table sera détruite automatiquement dès la déconnexion.
Marsh Posté le 24-06-2005 à 09:02:46
Bonjour,
Je me prends la tete sur une requete sql (j'utilise mysql)
J'ai 2 tables :
Je souhaite recupérer en une requete la liste des threads pour un idforum donné et egalement la date du dernier message ainsi que le pseudo de la personne qui a ecrit en dernier.
Mais je n'arrive pas a ecrire de LEFT JOIN correct :
En effet ça retourne les informations a propos du premier message de chaque sujet.
J'ai essayé un ORDER BY mais il est appliqué apres le GROUP BY donc est sans effet.
J'ai egalement tenté un MAX(m.date) mais je ne recupere pas le pseudo correspondant...
Une idée ?
Merci d'avance
Fluminis