MySQL Group By et somme de la valeur totale d'une autre colonne
Dans MySQL, lorsque vous utilisez la clause GROUP BY pour regrouper les lignes en fonction d'une ou plus de colonnes, il est courant de vouloir calculer les valeurs agrégées pour d'autres colonnes. Dans cet exemple, supposons que vous ayez un tableau avec deux colonnes : « mot » et « montant ». Vous souhaitez additionner les montants pour chaque mot unique.
Problème rencontré :
Lorsque vous essayez d'utiliser la clause GROUP BY comme suit :
SELECT word, SUM(amount) FROM `Data` GROUP BY 'word'
vous pouvez rencontrer une erreur indiquant que la colonne est invalide.
Solution :
Le problème survient parce que vous avez placé le nom de la colonne « mot » entre guillemets simples, ce qui l'amène à être traité comme une chaîne. Au lieu de cela, supprimez simplement les guillemets simples autour du nom de la colonne :
SELECT word, SUM(amount) FROM Data GROUP BY word
Cette syntaxe corrigée regroupera correctement les lignes par la colonne « mot » et additionnera la colonne « montant » pour chaque mot unique, fournissant ainsi le résultat souhaité. résultat :
word | amount |
---|---|
dog | 6 |
elephant | 2 |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!