[php/MySQL] Comptabiliser entrée identique

Fermé
Holdup - 14 janv. 2008 à 16:33
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 15 janv. 2008 à 16:02
Bonjour,

J'ai un peu du mal à me mettre les idées en place pour expliquer clairement mon problème. mais je vais essayer.

J'ai une bdd MySQL avec 700 entrées environ avec dedans une liste de produit fabriqué.
voilà la table :

Table : fabrication
ID - date - Nom produit - n° de Lot - rectification

J'extrait de cette liste les produit qui ont été rectifié :

$sql = "SELECT * FROM fabrication WHERE rectification='OUI' AND date like '%/$mois/%$an' ";

J'ai donc une liste de 50 fabrications ayant été rectifiées sur une période que j'ai choisi

Je souhaite une requete SQL qui me permettrais d'afficher le nb de fois que le même "nom produit" a été rectifié ? Le problème étant que je ne connais pas à l'avance les "nom produit" qui ont été corrigé parmi les 150 differents qu'il 'existe et que je ne souahite pas voir réapparaitre le même nom produit mais ne le voir que une seule fois.

Pour afficher :

Produit F : Corrigé 5 fois
Produit X : Corrigé 17 fois
etc ...

sans faire apparaitre tous les produits à 0 correction ni ceux qui ne sont pas dans ma bdd pour la période $mois $an spécifié.

ai je été clair ?

Je l'espère. Merci de votre aide.
A voir également:

5 réponses

Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
14 janv. 2008 à 17:09
Bonjour,

Essaie cette requête :
SELECT `Nom produit`, COUNT(*) As nombre FROM fabrication
WHERE rectification='OUI' AND date like '%/$mois/%$an' AND COUNT(*)>0
GROUP BY `Nom produit`
Bon, un truc qui dépend un peu des SGBD, donc je ne suis pas sûr, c'est le COUNT(*) dans la clause WHERE. Tu peux peut-être le remplacer par "nombre", si cela ne fonctionne pas.

Xavier
0
Voilà ce que me renvoi la requete :

Erreur SQL !
SELECT `Nom produit`, COUNT(*) As nombre FROM fabrication
WHERE rectification='OUI' AND date like '%/$mois/%$an' AND COUNT(*)>0
GROUP BY `Nom produit`

Utilisation invalide de la clause GROUP
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
14 janv. 2008 à 18:16
??
Euh, ce sont bien les bon noms de colonne ??
Là je ne vois pas !
Et si tu essaies de mettre la requete sur une seule ligne ?

A moins que... Quel est le type de données de `Nom produit` ?
0
nom produit : varchar(5) - latin1_swedish_ci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
15 janv. 2008 à 16:02
Alors là, je ne vois pas, désolé... Si ça avait été un champ TEXT ou BLOB, oui, mais un varchar !
Tu as essayé de tout mettre sur une ligne ?
Tu peux me donner le code php qui va avec ?
0