Page 1 sur 1

GROUP BY ou DISTINCT ?

Posté : 07 déc. 2006, 14:29
par jeko
Bonjour a tous, je vous expose mon souci. Je cherche à afficher dans une page profile d'un membre de mon forum les derniéres personnes ayant visité son profile. Je stock donc dans une table son nom, la date de sa visite et l'id du membre.

Pour le moment j'ai ceci.
              $DB->simple_construct( array( 'select' => 'user_name, date, user_id',
									  'from'   => 'profile_views',
									  'where'  => "profile_id=".$member['id'],
                                                        'order'  => "date DESC", 
                                                        'limit'  => array(0,10)  ) );
Mais bien sur si un membre raffraichit la page 5 fois il apparait 5 fois dans la liste des deniéres visites du profile. J'aimerais n'afficher qu'une seule fois un membre. J'ai donc essayer avec select DISTINCT(user_name) ou encore avec group by user_name mais je n'arrive pas a obtenir le résultat souhaiter. Quelqu'un aurait il une idée ? Merci

Posté : 07 déc. 2006, 14:40
par jojolapine
je pense qu'il y a une petite erreur de conception au départ, lorsque tu met dans ta table de dernière visite, la date de dernière visite d'un membre, il faut regarder si ce membre n'a pas déja une entrée dans la table, si c'est le cas, faire seulement un update de la date... non?

Posté : 07 déc. 2006, 15:37
par mere-teresa
Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "SQL".

Merci de prendre le temps de lire les règlements ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.

Re: GROUP BY ou DISTINCT ?

Posté : 07 déc. 2006, 22:15
par didgar
Salut !
Quelqu'un aurait il une idée ? Merci
Moi je vote pour un GROUP BY user_id

A+

Didier