Dans cette fiche... |
En SQL, vous disposez d'un certain nombre de fonctions pour effectuer des
calculs.
Associées à la clause WHERE, ces
fonctions travaillent sur une partie de la table seulement, par critères.
Les fonctions de calcul sont similaires aux fonctions de regroupement dans
une requête classique.
On retrouve donc :
Count | Pour effectuer des décomptes |
Sum et Avg | Pour effectuer des sommes et des moyennes |
Min et Max | Pour calculer un minimum, un maximum. |
Var, VarP, StDev et StDevP | Pour effectuer les calculs statistiques de base (variance, écart-type). Ces fonctions ne sont pas traitées ici, mais sont disponibles dans l'aide en ligne d'Access. |
Consultez la fiche Taper et tester du code SQL avant de lire ce qui suit.
Si votre base de données comporte 2 tables nommées tblClients et tblProduits :
SELECT Count(Téléphone) AS NbTel FROM tblClients; SELECT Count([Numéro de téléphone]) AS NbTel FROM tblClients; SELECT Count(Téléphone) AS NbTel FROM tblClients WHERE [Nom Client] LIKE "A*"; SELECT Count(*) AS NbClients FROM tblClients;SELECT Avg(Prix) AS PrixMoy FROM tblProduits WHERE Catégorie="Hifi"; SELECT Max(Prix) AS PrixMax FROM tblProduits WHERE Catégorie="Alimentaire"; SELECT Min(Prix) AS PrixMin FROM tblProduits WHERE Catégorie="Alimentaire";
SELECT Count(Téléphone) AS NbTel FROM tblClients; |
Cette ligne permet de compter les clients qui ont un numéro
de téléphone.
|
SELECT Count([Numéro de téléphone]) AS NbTel FROM tblClients; |
Le calcul est identique à celui plus haut. Ici, comme le nom de champ comporte des espaces, on l'a entouré de crochets. |
SELECT Count(Téléphone) AS NbTel FROM tblClients WHERE [Nom Client] LIKE "A*"; |
Plus acrobatique : on calcule le nombre de clients dont le nom démarre par un A, et qui ont un numéro de téléphone dans la table. |
SELECT Count(*) AS NbClients FROM tblClients; |
Simple et pratique : on calcule le nombre de clients. Le résultat s'appellera NbClients, grâce au AS. |
SELECT Avg(Prix) AS PrixMoy FROM tblProduits WHERE Catégorie="Hifi"; |
Cette ligne calcule la moyenne des prix, pour tous les
produits de la catégorie Hifi. Le résultat sera nommé PrixMoy. |
SELECT Max(Prix) AS PrixMax FROM tblProduits WHERE Catégorie="Alimentaire"; |
Une formalité maintenant ! On calcule le prix maximum dans la catégorie Alimentaire. |
SELECT Min(Prix) AS PrixMin FROM tblProduits WHERE Catégorie="Alimentaire"; |
Et enfin : le prix minimum pour la catégorie Alimentaire. |