Requette SQL DISTINT, COUNt GROUP
Résolu/Fermécs_eli42 Messages postés 141 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 18 août 2024 - 26 juin 2023 à 20:26
- Requette SQL DISTINT, COUNt GROUP
- Requête sql date supérieure à ✓ - Forum Programmation
- Blob sql ✓ - Forum Webmastering
- Group whatsapp - Guide
- Gd group prélèvement ✓ - Forum Vos droits sur internet
- Requête sql pix - Forum Python
2 réponses
Modifié le 25 juin 2023 à 12:13
Bonjour,
Je ne maitrise pas la syntaxe php. Mais concernant le sql et select, on utilise soit DISTINCT, soit GROUP BY, mais ce dernier est indispensable si on a des fonctions d'agrégat comme count(*). Après la création d'un alias s'effectue à la suite du champ que l'on veut renommer : count(*) as nbr.
Je ne sais pas exactement ce que tu veux faire, mais voilà une syntaxe à étudier, en distinguant une somme, d'un total d’occurrences.
SELECT ID,CODE,ART,FRS,RAY,COULE,SAISIE,OBS,DAT,MAJ, sum(qt) AS sqt, count(*) AS nbr FROM article_mouvement WHERE ART='$id' and SAISIE >= '$lg' GROUP BY ID,CODE,ART,FRS,RAY,COULE,SAISIE,OBS,DAT,MAJ ORDER BY SAISIE,FRS,RAY,COULE ASC
26 juin 2023 à 20:26
Bonjour Jee
Je me suis penché sur ta solution surtout la ligne 2
Il est vrais que répondre a une question avec si peux d'élément c'est compliqué
dans ce cas il y a le code article présent dans le stock 27 pieces
Mais je dois affiche QT, SAISIE (longueur de la piece), FRS (fournisseurde la piece), RAYON (ou est stocké les pieces), COULE le numéro de fonderie de la piece)
Mon résultat doit être sur 5 lignes pour regouper les 27 pieces en stock
Ca permet au commercial de vendre des pièces identiques
et a l'atelier de savoir ou est stocké la pièces
j'ai donc codé :
$sql = $pdo->query("SELECT distinct id,CODE,ART,FRS,RAY,COULE,SAISIE,OBS,DAT,MAJ, COUNT(id) AS nbr FROM article_mouvement where ART='$id' and SAISIE >= '$lg' GROUP by CODE,ART,FRS,RAY,COULE,OBS,SAISIE Order by SAISIE,FRS,RAY,COULE ASC");
et j'ai bien mon résultat que j'ai besoin
Un grand merci à toi, a la lecture de mon code c'est plus clair
Alert('Beau temps belle mer');