GROUP BY ou DISTINCT ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : GROUP BY ou DISTINCT ?

Re: GROUP BY ou DISTINCT ?

par didgar » 07 déc. 2006, 22:15

Salut !
Quelqu'un aurait il une idée ? Merci
Moi je vote pour un GROUP BY user_id

A+

Didier

par mere-teresa » 07 déc. 2006, 15:37

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.

par jojolapine » 07 déc. 2006, 14:40

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?

GROUP BY ou DISTINCT ?

par jeko » 07 déc. 2006, 14:29

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