8791 sujets

Développement web côté serveur, CMS

Bonjour,

Je voudrais additionner le nombre de fruits que j'ai dans ma table sql.

J'ai deux sortes de donnée, légume et fruit.

Chaque ligne à un code fruit ou légume ( t pour type )

Je veux que mon programme m'additionne mes légumes et mes fruits.

J'ai réussit à avoir le nombre total d'article dans ma base Smiley smile

<?
//La connexion à la base de données est déjà réalisée
$str_requete = "SELECT * FROM Articles";

$o_result = mysql_query($str_requete);

//On recupère le nombre de lignes retournées par cette requete
$Totaux = mysql_num_rows($o_result);

//On affiche le nombre de lignes retournées
echo "<u>Nombre d&apos;enregistrement sur la base de donn&eacute;e</u> : <b>$Totaux</b>";
?>


Code ci-dessous pour le total des articles dans la base.

La colonne désignation fruit et légume est t.

J'ai beau cherché sur le net je trouve pas la solution.

C'est basique même en regardant les cours, j'y arrive pas.

En gros vous avez 4 catégories de fruits et 8 catégories de légumes.


Merci de votre aide.
Modifié par CVS (14 Jul 2012 - 17:11)
Oui tu as rasion.

Je donne un exemple:

Je veux savoir combien il y a d'homme dans ma table et combien il y a de femme.

Homme est défini dans la colonne t -> H

Femme est défini dans la colonne t -> F

Dans la ligne, nom prénom j'ai le sexe, je veux donc connaitre combien j'ai d'homme dans ma table.

Le grand classique, mais je rame comme un diable Smiley bawling

Addition des valeurs H pour l'addition des hommes.
Modifié par CVS (14 Jul 2012 - 16:10)
si tu as une ligne par personne (ou légume dans ton cas).
Dans le cas où tu veux le nombre d'hommes,
t'as juste à compter le nombre d'entrée où t = H

tu comprends? ou alors y'a encore un truc qui m'échappe
Oui, c'est ça, je fais comment ?

Count ? Sum ?

J'ai regardé ton lien, et j'ai du mal à piger.

Je débute dans le sql.

Si je pouvais un exemple, car c'est pas faute chercher Smiley bawling
Modifié par CVS (14 Jul 2012 - 16:16)
Je m'arrache les cheveux, j'y suis depuis 3 heures
Modifié par CVS (14 Jul 2012 - 16:23)
Si tu veux bêtement le nombre d'entrées pour les t = H

SELECT COUNT(id) AS Nbre FROM  ta_table WHERE t = H


C'est un exemple! ne le recopie pas à la lettre près!

sinon va voir du côté de GROUP BY si tu veux une requête qui te prend l'ensemble
SUM,
c'est dans le cas où tu additionnes des données contenues dans une colonne et non ligne par ligne

edit: Mouais, je suis pas clair non plus... Smiley confus
Modifié par hophop (14 Jul 2012 - 16:25)
Je m'arrache les cheveux par poignée entière !!!! Smiley ohwell
Modifié par CVS (14 Jul 2012 - 16:38)
Peux tu donner un exemple de ligne que tu as...

edit: ...dans ta table
Modifié par hophop (14 Jul 2012 - 16:48)
<?php

$query = mysql_query('SELECT t, COUNT(*) AS nb FROM Articles GROUP BY Légume');
while ($fetch = mysql_fetch_assoc($query)
{
echo $fetch['Légume'].' apparaît '.$fetch['nb'].' fois.';
}

?
non, une ligne de ta table!
les noms de colonnes avec un ex. pour chaque...
Modifié par hophop (14 Jul 2012 - 16:55)
l = carotte t = Légume p = 2.40

l pour id

t pour catégorie

p pour prix
Modifié par CVS (14 Jul 2012 - 17:00)
Smiley sweatdrop
euh t'as pas un champ id pour l'id de ta ligne?
A ce que je comprends c'est carotte ton id...étrange... Smiley confus
Plus facile pour moi, ça marche nickel.

Mais il faut compter le nombre de fois ou légume apparait dans la table.

Il me reste un cheveux sur le cailloux !!!!
un exemple de ce que je ferais:
(id) (nom) (type) (prix)

Vaut mieux toujours avoir un id qui correspond au numéro de l'enregistrement dans ta table
Modifié par hophop (14 Jul 2012 - 17:07)
Tant mieux! Smiley smile
Mais je t'avouerais que si tu voulais faire une requête avec plusieurs WHERE fallait le dire dès le début.... Smiley sweatdrop

Ca n'empêche qu'à l'avenir je te conseille de toujours créer un champ (id) qui s'auto-incrémente en clé primaire....