0% ont trouvé ce document utile (0 vote)
150 vues13 pages

Requêtes SQL et agrégation dans Access

Ce document décrit l'utilisation des fonctions d'agrégation dans les requêtes SQL et QBE sous Access. Il présente des exemples de requêtes comptant, additionnant et calculant des statistiques sur des champs regroupés. La dernière partie propose des exercices à réaliser avec des requêtes utilisant ces fonctions.

Transféré par

ali
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
150 vues13 pages

Requêtes SQL et agrégation dans Access

Ce document décrit l'utilisation des fonctions d'agrégation dans les requêtes SQL et QBE sous Access. Il présente des exemples de requêtes comptant, additionnant et calculant des statistiques sur des champs regroupés. La dernière partie propose des exercices à réaliser avec des requêtes utilisant ces fonctions.

Transféré par

ali
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Hassan II - Casablanca

Faculté des sciences juridiques, économiques et sociales


Mohammedia

Cours Informatique Appliquée

Gestion de Base de données avec ACCESS

Semaine 01 Avril – 07 Avril

Amal EL MZABI
Requête de sélection avec opération

En plus de faire des requêtes avec des critères ou des


fonctions intégrées d'Access, il est aussi possible de
regrouper les champs pour faire des opérations, grâce aux
fonctions d’agrégation (regroupement). Ces fonctions
effectuent quelques statistiques de bases sur des tables,
telles que la somme, la moyenne, de champs numérique.
Parmi d'autres opérations, il est aussi possible de compter
le nombre d'enregistrements qui répondent à certains
critères comme compter par exemple le nombre de clients
habitant Casablanca.
2
Pour utiliser les fonctions d’agrégation En mode QBE,

créer une requête de sélection, ajouter les tables, les

champs et les critères qui seront utilisées dans la requête

puis dans le groupe Afficher/Masquer cliquer sur le

bouton

Une nouvelle ligne "Opération" apparaît dans la grille de


création requête, c'est grâce à elle que nous allons faire
nos opérations.
3
Exemple de fonctions d’agrégation (regroupement)

− Regroupement : Permet de factoriser un traitement effectué


sur un champ en fonction de chaque valeur d’un autre champ.

− Somme : Calcule la somme des valeurs d'un champ (numérique


ou monétaire)

− Moyenne : Calcule la moyenne des valeurs d'un champ


(numérique ou monétaire)

− Min : Détermine la plus petite valeur d'un champ (sauf mémo,


Ole…)

− Max : Détermine la plus grande valeur d'un champ (sauf


mémo, Ole…)
4
Fonctions d’agrégation (suite)

− Compte : Calcule le nombre de valeurs non nulles d'un


champ (sauf mémo, Ole…).

− StDev : Calcule l'écart type des valeurs d'un champ


(numérique ou monétaire).

− Var : Calcule la variance des valeurs d'un champ


(numérique)

− Premier : Donne la 1ère valeur d'un champ pour les


critères demandés (sauf mémo, Ole…)

− Dernier : Donne la dernière valeur d'un champ pour les


critères demandés (sauf mémo, Ole…)
Exemple 1
Dans la BD « Gestion des commandes », on veut compter le
nombre de clients pour chaque ville.

Alias

Fonction Compte appliquée sur


Regroupement sur les villes le champ CodeClient

6
En mode SQL :

Les principales fonctions d’agrégation en SQL sont les


suivantes :
AVG() pour calculer la moyenne sur un ensemble
d'enregistrements.
COUNT() pour compter le nombre d'enregistrement
SUM() pour calculer la somme sur un ensemble
d’enregistrements.
MIN() pour récupérer la valeur minimale des valeurs d’un
champ (pour des données numériques ou alphanumérique).
MAX() pour récupérer la valeur maximale de la même manière
que MIN().
D’une manière générale, on utilise la syntaxe suivante pour
ajouter une fonction d’agrégation :

Select fonction(champ)
From Table_Source
[Where Condition]
Group by Nom_Champ;

Pour regrouper les lignes, on utilise la commande GROUP


BY suivi du nom du champ à grouper. Elle se place après la
clause Where si elle existe sinon après From.

8
Reprenons l’exemple précédent :

Select Ville, Count(CodeClient) As Nombre de Clients


From Clients
Group By Ville;

Exemple 2

Dans la BD « Gestion des commandes », on veut afficher,


pour chaque désignation de produit, la quantité totale
commandée et son prix payé.

9
En mode SQL :

Select Desig, Sum(Quantité) AS QuantitéTotale,


Sum([Quantité]*[PU]) AS PrixTotal
From Produits Inner Join DétailsCommande
ON [Link] = Dé[Link]

Group By Desig; 10
Conditions sur les fonctions d'agrégation en SQL
Il n'est pas possible d'utiliser la clause WHERE pour faire
des conditions sur une fonction d'agrégation. Par exemple, si
dans l’exemple 2, on veut afficher les désignations dont la
quantité totale est plus de 40, la requête suivante ne
fonctionnera pas.

Select Desig, Sum(Quantité) AS QuantitéTotale,


Sum([Quantité]*[PU]) AS PrixTotal
From Produits Inner Join DétailsCommande ON [Link]
= Dé[Link]
Where Sum(Quantité) > 40

Group By Desig; 11
Alors il faut utiliser la clause HAVING. Cette clause se
place juste après le GROUP BY.

Select Desig, Sum(Quantité) AS QuantitéTotale,


Sum([Quantité]*[PU]) AS PrixTotal
From Produits Inner Join DétailsCommande ON [Link]
= Dé[Link]
Group By Desig

Having Sum(Quantité) > 40 ;

12
Gestion de base de données sous Access

Application – Cours (Suite)

Partie IV :

Créer les requêtes suivantes (mode QBE et SQL)

Requête avec opération :

1. Afficher le nombre total des clients

2. Afficher le nombre de commandes par clients.

3. Afficher la quantité moyenne, la quantité maximale et la quantité minimale

de chaque produit commandé dans les 6 mois avant le mois courant.

4. Afficher pour chaque client, le code, le nom et le prénom dans une seul

colonne et le nombre de ses commandes. On s’intéresse aux commandes

faites ces deux dernières années.

5. Afficher le nombre de commandes mensuelles passées par les clients de

chaque ville, où le mois est donné comme paramètre et est exprimé en

lettres.

6. Pour chaque commande, afficher le numéro, le montant hors taxe HT, et le

montant TTC avec un taux de TVA variable. Limiter la sélection

uniquement pour les commandes dont la durée (nombre d’année qui sont

passés depuis la création à nos jours) est supérieure à un an et ayant un

montant TTC entre 15000 et 20000.

Vous aimerez peut-être aussi