Académique Documents
Professionnel Documents
Culture Documents
Les Requetes Resume PDF
Les Requetes Resume PDF
Cliclasolution
Anne 2006/2007
REQUTES
Utilit des requtes
QUESTIONNER LA BASE DE DONNES
La fonction classique d'une requte est de rpondre une question sur la base de
donnes. "Quels sont les clients habitant Marseille ?", ou "Quel est le chiffre
d'affaires par catgorie de produits ?" sont des exemples typiques de requtes.
64
Access 2002
Cliclasolution
Anne 2006/2007
Cliquez sur Clients puis sur Ajouter, cliquez sur Commandes puis sur
Ajouter, puis sur Fermer.
65
Access 2002
Cliclasolution
Anne 2006/2007
Pour ajouter des champs, vous pouvez les attraper et les placer la souris. Une
autre mthode consiste faire un double-clic sur le champ qui vous intresse.
n Double-cliquez sur le champ Raison sociale (table Clients), puis sur le champ
Numro de commande (table Commandes).
n Enfin double-cliquez sur le champ Rfrence article (table Dtail des
commandes).
66
Access 2002
Cliclasolution
Anne 2006/2007
67
Access 2002
Cliclasolution
Anne 2006/2007
Examinez le rsultat. Seuls les clients qui ont effectivement pass commande sont
slectionns. Les autres, comme le client BBL ILLIMITED, par exemple,
n'apparaissent pas.
68
Access 2002
Cliclasolution
Anne 2006/2007
Pourquoi ? Parce qu'Access affiche l'enregistrement d'une table (Clients) que s'il
trouve un enregistrement correspondant dans l'autre table (Commandes), or il n'y a
pas de commande pour le client BBL ILLIMITED.
Si par extraordinaire, il y avait des commandes sans client, elles n'apparatraient
pas non plus, puisque Access ne trouverait pas d'enregistrement correspondant
dans la table Clients.
nCliquez sur le bouton
Cliquez sur le trait de liaison entre les deux tables, pour slectionner la liaison.
Le client BBL ILLIMITED apparat. Comme il n'a pas command, les champs Numro
de commande et Date de commande sont vierges.
69
Access 2002
Cliclasolution
Anne 2006/2007
Vous pouvez spcifier un titre de colonne pour les champs de la requte. Il suffit de
taper le titre suivi de deux points (:) juste avant le nom du champ, sur la ligne
Champs.
Par exemple, saisir N o m d u c l i e n t : juste devant le nom de champ Raison sociale
changerait le titre de la colonne en mode feuille de donnes.
Trier les donnes signifie dcider de l'ordre dans lequel elles apparatront. Dans la
table Clients, les donnes sont tries par numro client, cl primaire. Vous allez crer
une liste donnant la raison sociale et le numro de client, trie par ordre alphabtique
sur la raison sociale.
nCliquez sur le bouton
Access 2002
Cliclasolution
Anne 2006/2007
Fermez la requte.
Critres de slection
Les critres de slection permettent de restreindre le champ d'action d'une
requte, par exemple en n'affichant que certains enregistrements. Les critres
s'crivent sur la ligne Critres, sous les noms de champs slectionns. Dans
certains cas, les critres s'crivent sur plusieurs lignes (la ligne Critres et celles audessous).
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
Cliquez sur
71
Access 2002
Cliclasolution
Anne 2006/2007
CARACTRES GNERIQUES
Les caractres gnriques permettent de rpondre des questions comme "quels
sont les articles dont la rfrence commence par Z". Dans ce cas, le critre serait :
comme "Z*".
Dans un critre, le caractre * remplace un groupe de lettres, alors que le caractre
? remplace une lettre une position prcise. Un critre contenant des caractres
gnriques est prcd de l'oprateur comme.
n
Ajoutez, dans cet ordre, les champs : Raison sociale, Rue, Code postal et
Ville.
n
Saisissez Comme " m a m a * " dans la ligne Critres du champ Raison sociale.
72
Access 2002
Cliclasolution
Anne 2006/2007
Access permet d'afficher les zones de saisie dans une fentre. C'est utile quand, par exemple,
l'on saisit un long critre qui ne tient pas dans la largeur de la colonne.
Il faut placer le curseur dans la zone de saisie et appuyer simultanment sur les touches Shift
F2. La fentre Zoom s'affiche. Une fois la saisie termine, fermer la fentre en cliquant sur OK.
Access 2002
Cliclasolution
Anne 2006/2007
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
nCliquez sur
Tous les articles s'affichent, sauf ceux de la catgorie tlco.
nFermez la requte sans la sauvegarder.
nCliquez sur
Les articles dont le prix est infrieur 1 000 s'affichent.
74
Access 2002
Cliclasolution
Anne 2006/2007
Dans les critres, les valeurs numriques ou montaires se saisissent sans mise en
forme. Dans notre exemple, nous avons top < 1000, et non < 1 000 .
Les oprateurs de comparaison peuvent tre aussi utiliss avec les dates et mme
avec les champs de type texte. Le critre < P dans le champ Rfrence produirait la
liste des rfrences dont la premire lettre est avant P dans l'ordre alphabtique.
nFermez la requte sans la sauvegarder.
OPRATEUR "ET"
OPRATEUR "ET" DANS DES CHAMPS DIFFRENTS
Dans la liste des articles de la catgorie alarme valant moins de 1 500 F, deux
conditions doivent tre remplies simultanment pour qu'un enregistrement soit
slectionn : le champ Catgorie doit contenir alarme, et le champ Prix unitaire
doit contenir une valeur strictement infrieure 1500.
Pour que plusieurs critres soient satisfaits en mme temps sur des champs diffrents
(Catgorie et Prix unitaire), il suffit de saisir les critres sur la mme ligne de
critres.
nCrez une requte vierge.
nAjoutez la table Catalogue et les champs Dsignation, Catgorie et Prix
unitaire.
nSaisissez les critres comme ci-dessous
nCliquez sur
75
Access 2002
Cliclasolution
Anne 2006/2007
nCliquez sur
OPRATEUR "OU"
OPRATEUR "OU" DANS DES CHAMPS DIFFRENTS
Vous dsirez la liste des produits qui soit appartiennent la catgorie tlco, soit
valent moins de 1 000 . C'est un OU entre deux champs.
Pour placer un ou dans des champs diffrents, il faut crire ces conditions sur des
lignes diffrentes. Vous pouvez ainsi crire la premire condition, comme d'habitude,
sur la ligne Critres, et la seconde condition, pour l'autre champ, sur la ligne juste en
dessous.
nCrez une requte vierge
n Ajoutez la table Catalogue et les champs Dsignation, Catgorie et Prix
unitaire.
n Comme critre du champ Catgorie, et sur la ligne Critres, saisissez t l c o .
n Comme critre du champ Prix unitaire, et sur la ligne Ou, saisissez <1000 .
76
Access 2002
Cliclasolution
Anne 2006/2007
nCliquez sur
Les articles slectionns sont soit de la catgorie tlco soit valent moins de 1 000 .
nCliquez sur
Seuls s'affichent les articles appartenant la catgorie alarme ou la catgorie
tlco.
77
Access 2002
Cliclasolution
Anne 2006/2007
ACTION
ILLUSTRATION
Saisir la valeur
numrique,sans saisir de
format (ni symbole
montaire ni espace)
Cherche les articles dont le prix est
de 1350
Chercher un texte
prcis.
Cherche un texte en ne
spcifiant que certaines
lettres
Saisir le texte,
indiffremment en
minuscules ou
majuscules. Access le
place entre guillemets.
Saisir les lettres sur
laquelle porte la
recherche et remplacer
les autres par un
caractre gnrique :
* remplace un groupe de
lettres.
78
Access 2002
Cliclasolution
Anne 2006/2007
Cherche les clients dont le nom contient
harn.
? remplace un seul
caractre une position
prcise.
Saisir Entre . . .
et
. . . . Remplacer
les . . . par les valeurs
limites.
Cherche les articles dont le prix
est entre 1 000 et 2 000
79
Access 2002
Cliclasolution
Anne 2006/2007
de.
Placer deux critres
relis par un ET dans
des champs diffrents
Placer plusieurs
critres relis par un
OU dans des champs
diffrents
Placer plusieurs
critres relis par un
OU dans le mme
champ
80
Access 2002
Cliclasolution
Anne 2006/2007
Access va chercher un champ nomm comme code postal recherch, pour faire
la comparaison. N'en trouvant pas, il interrompra la requte pour en demander la
valeur.
Cliquez sur
Une bote de dialogue vous demande la valeur du paramtre.
Vous pouvez taper le critre qui vous intresse. 75010 donnerait les clients du
10me arrondissement de Paris.
n
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
Ajoutez la table Dtail des commandes et la table Catalogue. Ajoutez les champs
Numro de commande, Rfrence article, Quantit et Prix unitaire.
81
Access 2002
Cliclasolution
Anne 2006/2007
Dans une expression de calcul, les noms de champ sont toujours entre crochets,
comme [Prix unitaire] Pour crire l e s e x p r e s s i o n s de cal cul , vou s pouvez
utiliser les oprateurs arithmtiques habituels (+ pour PLUS, - pour MOINS, * pour
MULTIPLIER, / pour DIVISER, ainsi que les parenthses) .
Cliquez sur
Les enregistrements s'affichent avec le champ calcul Prix total
Calculs globaux
CALCULS SUR TOUS LES ENREGISTREMENTS
Vous allez calculer la quantit totale d'articles vendus. Il ne s'agit plus de champ
calcul, mais d'un calcul portant sur tous les enregistrements.
Pour ce type de calcul, il faut faire apparatre une nouvelle ligne, la ligne Opration.
Puis, pour le champ choisi, slectionner l'opration qui vous intresse. L'opration
Somme convient pour notre exemple.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Dtail des commandes et ajoutez le champ Quantit.
82
Access 2002
Cliclasolution
Anne 2006/2007
Cliquez sur la ligne Opration, dans la colonne Quantit, pour faire apparatre le
bouton de liste droulante. Dans la liste droulante, choisissez Somme.
nCliquez sur
Rsultats
Somme
Moyenne
Min
Max
Compte
Ecartype
Var
Premier
Dernier
83
Access 2002
Cliclasolution
Anne 2006/2007
Le calcul prcdent portait sur tous les enregistrements. Cette fois, vous allez
regrouper les enregistrements par catgorie, et demander la quantit vendue pour
chaque catgorie.
Les enregistrements sont regroups grce la fonction Regroupement dans la ligne
Opration. Il est possible de faire plusieurs regroupements, par exemple regrouper
d'abord les clients par pays, puis par ville, en mettant les deux champs la suite.
nCliquez sur
nChoisissez Requte / Afficher la table...
nAjoutez la table Catalogue.
n
Cliquez sur
Access 2002
Cliclasolution
Anne 2006/2007
Access va calculer la somme des quantits vendues par rfrence, le prix total, et
va faire la somme de ces rsultats pour chaque rfrence.
nCliquez sur
85
Access 2002
Cliclasolution
Anne 2006/2007
nFermez la requte.
Access 2002
Cliclasolution
Anne 2006/2007
enregistrements dont le champ Quantit est suprieur 200. Les commandes dont
la quantit est infrieure 201 ne seront pas prises en compte dans le cumul par
catgorie. Il y a donc application de critre, puis calcul sur les enregistrements
slectionns.
Pour appliquer un critre avant un calcul global, il faut ajouter le champ contenant le
critre et choisir O comme opration.
Il ne reste qu'une catgorie, alarme. Cela signifie qu'il n'y a aucune commande avec
une quantit suprieure 200 pour un article d'une autre catgorie.
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
87
Access 2002
Cliclasolution
Anne 2006/2007
Cliquez sur
Access 2002
Cliclasolution
Anne 2006/2007
89
Access 2002
Cliclasolution
Anne 2006/2007
Notez qu'il est possible, avec l'option Autre base de donnes, et en donnant son nom
dans la zone Nom de fichier, de transfrer des informations de la base en cours vers
une autre base d'Access.
n Saisissez produits divers comme nom de la nouvelle table et validez.
n Excutez la requte en cliquant sur le bouton
SUPPRESSION D'ENREGISTREMENTS
Vous allez supprimer les produits de la catgorie divers dans la table Catalogue.
n
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
Cliquez sur
(Requte Suppression).
90
Access 2002
Cliclasolution
Anne 2006/2007
AJOUT D'ENREGISTREMENTS
Vous allez ajouter la table Catalogue les enregistrements de la table produits
divers dont le prix unitaire est suprieur 10 francs.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table produits divers. Ajoutez le champ astrisque (toile) pour que
tous les champs soient slectionns.
n Ajoutez le champ Prix unitaire et saisissez >10 comme critre pour ce champ.
nCliquez sur
(Requte Ajout...).
91
Access 2002
Cliclasolution
Anne 2006/2007
nDans la bote de dialogue qui apparat, droulez la liste de la zone Nom de table.
Choisissez Catalogue.
Comme pour la cration de table, cette requte action permet de transfrer des
donnes vers une autre base de donnes Access. II Faut dans ce cas choisir l'option
Autre base de donnes et saisir le nom de la base dans la zone Nom de fichier.
nValidez la bote de dialogue Proprits de la requte.
Une nouvelle ligne, Ajouter , est apparue. Elle indique quel champ de la table
de destination chaque champ slectionn doit tre ajout. Par dfaut, elle reprend
les mmes noms de champ, mais il est possible d'indiquer d'autres noms, et ainsi
d'ajouter des donnes entre des tables n'ayant pas les mmes noms de champ.
n Effacez Prix unitaire sur la ligne Ajouter , pour le champ Prix unitaire.
En effet, ce champ est dj ajout dans la table de destination grce l'astrisque.
Il n'est reproduit que pour servir de critre.
92
Access 2002
Cliclasolution
Anne 2006/2007
L aussi, la requte permet d'avoir accs des informations inaccessibles dans la seule table
Dtail des commandes.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Clients et la table Commandes.
n Ajoutez les champs Numro de commande, Numro client (table Commandes),
Raison sociale, Rue,
Transporteur et Urgent.
Code
postal,
Ville,
Date
de
commande,
Notes,
Le champ Numro client doit imprativement tre choisi dans la table Commandes. Lors de
la saisie d'un bon de commande travers la requte, on indique ainsi quel client passe
commande.
Fichier
93
Informations
commandes
Access 2002
Cliclasolution
Anne 2006/2007
Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
La commande Affichage Nom des tables (ou le bouton m affiche une ligne supplmentaire, qui
contient les noms des tables auxquelles appartiennent les champs ajouts dans la
requte. Le dessin d'cran de la page suivante reprsente une requte avec la ligne Table
affiche.
Ajoutez les champs Numro de commande, Rfrence article (table Dtail des
commandes), Dsignation, Prix unitaire et Remise.
le
___Commandes
Hum) de r
Numro dent
Date de comm
Noter rteurr
Notes
Urgent_______+
e,u
C A P . Numro de commar
Tri Croissant
Afficher
Cirires:
Ote
Numro
Raison
Code -*-
Rue
, ,~, ,
~~
94