count et group by

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 : count et group by

par Cyrano » 25 avr. 2005, 00:32

Là, je cale et ne peux que te renvoyer au manuel MySQL sur la clause GROUP BY, tu y trouveras sûrement aussi rapidement que moi la solution que je ne retrouve pas de tête.

par oliwood » 25 avr. 2005, 00:24

Merci pour ta réponse :D
Mais ça va po mieux... !
Je crois que j'ai un problème dans ma clause while, car avec 1 client dans ma table ça marche, mais dès que j'ai 2 clients il y a une boucle qui se produit et je dois arrêter mon navigateur !! :shock:

Ma table ip_stat_vod ressemble à ça :

IDclient1 | IDcontenu8 | date
IDclient1 | IDcontenu3 | date
IDclient1 | IDcontenu5 | date
IDclient1 | IDcontenu5 | date

ça ça marche car à l'affichage j'ai bien
IDclient1 = 4


ça se gate dès que je rejoute une entrée
IDclient2 | IDcontenu5

Là il boucle... :cry:

Merciii !

par Cyrano » 25 avr. 2005, 00:07

Pour fonctionner, une requête avec un agregat (count(*) par exemple) devra comporter dans la clause GROUP BY tous les autres champs, ainsi, la requête est incomplète et devrait être:
$sql = "SELECT
nom_client,id_numAutoClient, COUNT(*) AS nbr_vu
FROM ip_stat_vod, ip_client
GROUP BY id_numAutoClient, nom_client";

count et group by

par oliwood » 24 avr. 2005, 22:48

Hello !

je cherche à afficher le nombre de contenus vu par mes visiteurs
j'ai 1 table ip_stat_vod dans laquelle j'enregistre l'id du client (table ip_client), l'id du contenu (table ip_contenu) et la date de la visite

$sql = "SELECT 
nom_client,id_numAutoClient, COUNT(*) AS nbr_vu 
FROM ip_stat_vod, ip_client 
GROUP BY id_numAutoClient";

$req=mysql_query($sql);

while($data = mysql_fetch_array($req)) {
$nbr_vu = mysql_result($req,"0","nbr_vu");
echo $nbr_vu;
}
J'ai essayé plusieurs tentatives, une semblait pas trop mal mais seulement avec 1 visiteurs..
merci pour votre aide

A++ OLi