Compter le nombre d'enregistrement d un champ

Compter le nombre d'enregistrement d un champ - PHP - Programmation

Marsh Posté le 20-01-2003 à 19:30:47    

Desole si la reponse a deja ete donnée mais pas facile de trouver les bons mots cles pour cette demande.
 
Voila,je cherche a avoir le nombre de ligne (donc de resultats) d'un champ de ma table.
 
J'ai deja reussi a faire 'en fonction de resultats'(pour me renvoyer le nbre de reponse etant 'win2kserver'  en ayant comme code :  
 
$req="select * from sondage WHERE resultat2='win2kserver'";
$res=mysql_query($req);
$nbr=mysql_num_rows($res);
 
Mais maintenant je ne cherche plus a faire de WHERE.
Existe t-il une fonction pour cela,ou on doit aussi passer par un select ?


Message édité par bigstyle le 20-01-2003 à 21:32:20
Reply

Marsh Posté le 20-01-2003 à 19:30:47   

Reply

Marsh Posté le 20-01-2003 à 20:55:26    

tu veux le nombre de lignes de ta table ?
 
$req="select * from sondage ";  
$res=mysql_query($req);  
$nbr=mysql_num_rows($res);  
 
[:spamafote]


Message édité par beleg le 20-01-2003 à 20:55:57
Reply

Marsh Posté le 20-01-2003 à 21:02:57    

je l avais fait en plus...
 
tt mon blem venait que dans mon echo de verification je pointais pas sur la bonne variable.rha la laaa :)
 
Merci beleg


Message édité par bigstyle le 20-01-2003 à 21:03:13
Reply

Marsh Posté le 20-01-2003 à 21:10:10    

:non:  
 
$req="select count(*) as Total from sondage ";  
$res=mysql_query($req);  
$nbr=mysql_result($res, 0, 0);

Reply

Marsh Posté le 20-01-2003 à 21:12:27    

Finalement j'avais fait  ca en attendant une reponse et ca marchait :  
 
$result = mysql_query("SELECT COUNT(*) AS num FROM sondage" );  
$num = mysql_result($result, 0, 'num';);  
 
Par contre,je n'ai pas compris la derniere ligne (notamment le '0' et le 'num' ...

Reply

Marsh Posté le 20-01-2003 à 21:14:51    

tu récupères le contenu de la case située à la ligne 0 et à la colonne 'num' du résultat $result  :)


Message édité par mrbebert le 20-01-2003 à 21:15:11
Reply

Marsh Posté le 20-01-2003 à 21:18:10    

mrBebert a écrit :

tu récupères le contenu de la case située à la ligne 0 et à la colonne 'num' du résultat $result  :)


 
Bon ben je te crois sur parole,meme si je comprend pas pourquoi le conten de la case situee a cet endroit me renverrait mon nbre de ligne :)

Reply

Marsh Posté le 20-01-2003 à 21:28:27    

Exécute la requête "SELECT count(*) FROM table" et regarde le résultat. Il n'y a qu'une seule ligne.
count() est une fonction d'agrégation. Elle regroupe toutes les lignes en une seule. Dans le même genre, tu des fonction comme MAX, MIN, AVG..
 
"SELECT max(champ1) FROM Table" ne te renvoie qu'une seule ligne, quelque soit le nombre d'enregistrements dans la table.

Reply

Marsh Posté le 20-01-2003 à 21:31:07    

mrBebert a écrit :

Exécute la requête "SELECT count(*) FROM table" et regarde le résultat. Il n'y a qu'une seule ligne.
count() est une fonction d'agrégation. Elle regroupe toutes les lignes en une seule. Dans le même genre, tu des fonction comme MAX, MIN, AVG..
 
"SELECT max(champ1) FROM Table" ne te renvoie qu'une seule ligne, quelque soit le nombre d'enregistrements dans la table.


 
Ca j avais a peu pres compris;par contre si justementca ne nous renvoie qu une seule ligne de resultat,pkoi devoir preciser "une case" a lire dans ce resultat (le 0,num)

Reply

Marsh Posté le 20-01-2003 à 21:31:38    

Juste pour info : je n'appellerai pas ton problème calculer le nombre de ligne d'un champ. Il serait plus juste de parler du nombres d'enregistrements.
 
Le nombre de lignes, ça fait penser immédiatement à un comptage de '\n'.


---------------
Le site de ma maman
Reply

Marsh Posté le 20-01-2003 à 21:31:38   

Reply

Marsh Posté le 20-01-2003 à 21:47:11    

c est modifié  ;)

Reply

Marsh Posté le 20-01-2003 à 21:50:49    

bigstyle a écrit :


 
Ca j avais a peu pres compris;par contre si justementca ne nous renvoie qu une seule ligne de resultat,pkoi devoir preciser "une case" a lire dans ce resultat (le 0,num)

Dans le cas général, il y a plusieurs lignes et plusieurs colonnes. Ici, c'est juste un cas particulier mais la fonction mysql_result n'est pas censée savoir à priori qu'il n'y a qu'1 ligne 1 colonne.

Reply

Marsh Posté le 20-01-2003 à 21:51:56    

d accord;ben maintenant j ai vraiment compris :D
 
Merci pour ta patience.

Reply

Marsh Posté le 20-01-2003 à 22:22:57    

Pas de problème :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed