AVG |
Moyenne |
|---|---|
| Access 2019, Access 2016, Access 2013, Access 2010, Access 2007, Access 2003, Access XP, Access 2000 | Microsoft Access |
Syntaxe
| Avg(attribut) |
Paramètres
| Nom | Description |
|---|---|
| attribut | Ce paramètre permet d'indiquer le nom de la colonne où il faut effectuer le calcul de la moyenne. |
Description
Cette fonction calcul la moyenne d'un groupe de lignes.
Algorithme
|
MODULE AVG(Élément) Somme ← 0 BOUCLE POUR I ← 1 JUSQU'A Nombre Élément Somme ← Somme + Élément [ I ] FIN BOUCLE POUR RETOURNE Somme / Nombre Élément |
Remarques
- La fonction calcule la moyenne arithmétique d'un ensemble de valeurs : La fonction Avg additionne toutes les valeurs numériques d'un champ, puis divise cette somme par le nombre de valeurs prises en compte. Elle permet ainsi d'obtenir rapidement la valeur moyenne d'une colonne de données. Cette fonction est largement utilisée dans les requêtes d'analyse et les rapports statistiques.
- Seules les valeurs numériques sont prises en considération : La fonction Avg s'applique aux champs contenant des nombres, tels que les entiers, les nombres décimaux ou les montants monétaires. Les champs de type texte ou contenant des données non numériques ne peuvent pas être utilisés directement avec cette fonction. Il est donc important de choisir un champ compatible avant d'effectuer le calcul.
- Les valeurs Null sont automatiquement ignorées : Lorsqu'un enregistrement contient la valeur Null, celle-ci n'entre pas dans le calcul de la moyenne. La somme et le nombre d'éléments sont calculés uniquement à partir des valeurs réellement présentes. Cette caractéristique permet d'obtenir une moyenne représentative sans devoir filtrer les données au préalable.
- La fonction est principalement utilisée dans les requêtes SQL d'Access : Avg apparaît très fréquemment dans les requêtes de sélection afin de produire des statistiques sur une table. Par exemple, une requête peut calculer la moyenne des salaires, des notes, des ventes ou des quantités commandées. Le résultat est généralement affiché sous la forme d'une seule valeur ou d'une moyenne par groupe.
- Elle est souvent combinée avec la clause GROUP BY : La fonction Avg devient particulièrement puissante lorsqu'elle est associée à la clause GROUP BY. Dans ce cas, Access calcule une moyenne distincte pour chaque catégorie ou groupe d'enregistrements. Cette technique est couramment utilisée pour produire des tableaux de bord et des rapports synthétiques.
- Le résultat peut contenir des décimales : Même si toutes les valeurs du champ sont des nombres entiers, la moyenne obtenue peut être un nombre décimal. Par exemple, la moyenne des valeurs 4 et 5 est égale à 4,5. Si un résultat entier est souhaité, il faudra utiliser une fonction complémentaire comme Round, Int ou Fix.
- La fonction peut être utilisée dans les états et les formulaires : En plus des requêtes SQL, Avg peut être employée dans les contrôles calculés des formulaires et des états Access. Elle permet ainsi d'afficher automatiquement la moyenne des données visibles, sans avoir à écrire de code VBA. Cette fonctionnalité facilite la création de rapports dynamiques.
- La présence d'une seule valeur retourne cette valeur : Si le groupe de données ne contient qu'un seul nombre, la moyenne calculée correspond naturellement à cette valeur. À l'inverse, si aucun enregistrement valide n'est disponible, la fonction retourne généralement Null. Il est donc conseillé de prévoir ce cas particulier lors du développement d'une application.
- La fonction est souvent associée à d'autres fonctions d'agrégation : Dans une même requête, Avg est fréquemment utilisée avec Sum, Count, Min, Max ou StDev. Cette combinaison permet de produire des analyses statistiques complètes à partir d'une seule exécution de requête. Les résultats obtenus sont particulièrement utiles pour le suivi des performances ou l'analyse de données.
- La fonction est optimisée par le moteur de base de données Access : Le calcul de la moyenne est effectué directement par le moteur de base de données, ce qui est généralement plus rapide que de parcourir les enregistrements dans une boucle VBA. Cette approche réduit la quantité de code à écrire et améliore les performances, notamment lorsque les tables contiennent plusieurs milliers d'enregistrements.
Dernière mise à jour : Mardi, le 28 juillet 2015