Vous êtes sur la page 1sur 14

IST-D

LES REQUETES
Les requêtes permettent de répondre à toutes questions. Une requête est une question posée à
la base de données afin de retrouver et présenter les données contenues dans les tables selon
les souhaits de l’utilisateur.

De façon plus précise, une requête est un objet d’une base de données qui permet de:

Retrouver des données provenant de plusieurs tables


Filtrer les données selon différents critères
Trier des données selon un ordre précisé par l’utilisateur
Créer de nouvelles données, calculées, à partir d’autres données.

Remarques : Contrairement à la table, le résultat d’une requête ne sera jamais enregistré dans
la base de données ; seule la question posée peut être enregistré dans la base de données.

Types de requêtes
Il existe 3 types de requêtes :

Requête sélection

Elle présente une sélection d’enregistrement et de champs, mais sans modifier les valeurs
contenues dans la base de données.

Requête action

Son objectif est de modifier les valeurs contenues dans les champs. Il existe 3 types de requête
action :

 Requête ajout (pour ajouter automatiquement les enregistrements dans une table)
 Requête suppression (pour supprimer automatiquement une série d’enregistrement
répondant à un certain critère)
 Requête mise à jour (pour modifier automatiquement des enregistrements existants, en
remplaçants certaines valeurs par d’autres selon des critères choisis par l’utilisateur

Requête analyse croisé

Permet d’analyser des données en combinant plusieurs critères

I. Requête sélection
 Regroupement des données provenant de plusieurs tables
IST-D
IST-D

 Tri d’enregistrement dans une requête

 Sélection d’enregistrement dans une requête


IST-D

 Critère sur un seul champ (critère simple)

 Combinaison de plusieurs critères (ET, OU)

Il est possible de combiner plusieurs critères dans une requête avec les opérateurs logiques ET
– OU
IST-D

Les opérateurs de comparaison : =, >, <, >=, <=, <>,

 Requête imbriquée (après SQL)

 Création de données calculées (utilisation de formule ou fonction)


Exemples:
Stock: ([Qté_E]-[Qté_S])
Réapprovisionnement: (0,1*[Qté_E])

II. Requête action

Les requêtes actions ne se contentent pas d’afficher les données selon les désidératas de
l’utilisateur, comme les requêtes sélection, mais effectuent des opérations sur les valeurs
IST-D

contenues dans les champs eux-mêmes. Elles permettent ainsi d’automatiser la mise à jour
des données.

 Requête ajout

Elle ajoute les enregistrements d’une table à une autre table, éventuellement en filtrant les
enregistrements ajoutés selon des critères définis par l’utilisateur et en ajoutant que certains
champs.

Requête suppression

Il est possible de supprimer automatiquement, en une seule opération, tout un groupe


d’enregistrements répondants à des critères définis par l’utilisateur.

 Requête mise à jour

Il peut être nécessaire de modifier tout ensemble d’enregistrements en remplaçant une ou


plusieurs valeurs par d’autres en une seule fois.
IST-D

III. Requête analyse croisée

La requête analyse croisée permet de structurer l’information obtenue par une requête en
combinant 2 critères d’analyse : un premier qui constituera les entêtes de colonne et un second
qui constituera les entêtes de ligne, avec regroupement des valeurs. Les informations sont
ainsi présentées sous la forme d’un tableau à double entrée.

Critères de requête
Un critère de requête est une règle qui identifie les enregistrements à inclure dans le résultat d'une requête.

Un critère ressemble à une formule, c'est-à-dire une chaîne qui comprend des références de champ, des

opérateurs et des constantes. On parle également d'expressions dans Microsoft Office Access 2007.

Critères des champs Texte, Mémo et Lien


hypertexte

Un critère que vous spécifiez pour un champ Lien hypertexte est, par défaut, appliqué à la portion de texte

affichée de la valeur de champ. Pour spécifier les critères de la partie de la valeur URL (Uniform Resource

Locator) de destination, utilisez l'expression HyperlinkPart. La syntaxe de cette expression se présente comme
IST-D

suit : HyperlinkPart([Table1].[Champ1],1) = "http://www.microsoft.com/", Table1 représentant le nom de la

table contenant le champ de lien hypertexte, Champ1 le champ de lien hypertexte et http://www.microsoft.com

l'URL correspondante.

Pour inclure des


enregistrements qui... Utilisez ce critère Résultat de la requête

Correspondent exactement à "Chine" Renvoie les enregistrements dont le champ PaysRégion est défini sur
une valeur, comme Chine Chine.

Ne correspondent pas à une Pas "Mexique" Renvoie les enregistrements dont le champ PaysRégion est défini sur
valeur, comme Mexique un pays autre que le Mexique.

Commencent par la chaîne Comme U* Renvoie les enregistrements de tous les pays et régions commençant
spécifiée, comme U par « U », tels qu'Uruguay ou Ukraine.

REMARQUE Lorsqu'il est utilisé dans une expression,


l'astérisque (*), également appelé caractère générique, représente
une chaîne quelconque de caractères. Pour connaître la liste des
caractères génériques, voir l'article Référence des caractères
génériques d'Access.

Ne commencent pas par la Pas comme U* Renvoie les enregistrements de tous les pays et régions ne
chaîne spécifiée, comme U commençant pas par « U ».

Contiennent la chaîne Comme "*Corée*" Renvoie les enregistrements de tous les pays et régions qui
spécifiée, comme Corée contiennent la chaîne « Corée ».

Ne contiennent pas la chaîne Différent de "*Corée*" Renvoie les enregistrements de tous les pays et régions qui ne
spécifiée, comme Corée contiennent pas la chaîne « Corée ».

Se terminent par la chaîne Comme "*ine" Renvoie les enregistrements de tous les pays et régions qui se
spécifiée, comme « ine » terminent par « ine », comme Chine et Argentine.

Ne se terminent pas par la Différent de "*ine" Renvoie les enregistrements de tous les pays et régions qui ne se
chaîne spécifiée, comme terminent par « ine ».
« ine »

Contiennent des valeurs Est Null Renvoie les enregistrements dont le champ ne contient aucune
NULL (ou manquantes) valeur.

Ne contiennent pas de Est Pas Null Renvoie les enregistrements dont le champ contient une valeur.
valeurs NULL

Contiennent des chaînes "" (une paire de Renvoie les enregistrements dont le champ est défini comme une
vides guillemets droits) valeur vide (mais pas Null). Par exemple, les enregistrements des
ventes d'un autre département peuvent contenir une valeur vide dans
le champ PaysRégion.

Ne contiennent pas de Pas "" Renvoie des enregistrements dont le champ PaysRégion contient une
chaînes vides valeur non vide.

Contient des valeurs nulles "" Ou est Null Renvoie des enregistrements dont le champ soit ne contient pas de
ou des chaînes vides valeur, soit est défini sur une valeur vide.

N'est pas vide N'est Pas Null Et Pas "" Renvoie les enregistrements dont le champ PaysRégion ne contient
pas de valeurs ni vides, ni Null.

Sont supérieurs ou égaux à >= "Mexique" Renvoie les enregistrements de tous les pays et régions qui, d'un
une valeur, Mexique par point de vue alphabétique, suivent le mot « Mexique ».
exemple, lorsqu'un tri
alphabétique est appliqué
IST-D

Sont compris dans une plage Comme "[A-D]*" Renvoie les enregistrements des pays et régions qui commencent par
spécifique, de A à D, par les lettres A à D.
exemple

Correspondent à l'une ou "États-Unis" Ou Renvoie les enregistrements des États-Unis ou du Royaume-Uni.


l'autre de deux valeurs, "Royaume-Uni"
comme États-Unis ou
Royaume-Uni

Contiennent une des valeurs En ("France", "Chine", Renvoie les enregistrements de tous les pays et régions spécifiés
de la liste "Allemagne", "Japon") dans la liste.

Contiennent des caractères Droite([PaysRégion], 1) Renvoie les enregistrements de tous les pays et régions se terminant
occupant une position = "s" par « s ».
spécifique dans la valeur de
champ

Répondent à des contraintes NbCar ([PaysRégion]) Renvoie les enregistrements des pays et régions de plus de
de longueur > 10 10 caractères.

Correspondent à un modèle Comme "Chi??" Renvoie les enregistrements de pays et régions tels que la Chine ou le
spécifique Chili composés de cinq caractères dont les trois premiers sont « Chi ».

REMARQUE Les caractères ? et _, lorsqu'ils sont utilisés dans


une expression, représentent un seul caractère (ils sont également
appelés des caractères génériques). Le caractère _ ne peut pas être
utilisé dans la même expression que le caractère ?, ni dans une
expression avec le caractère *. Vous pouvez utiliser le caractère
générique _ dans une expression qui contient également le caractère
générique %.

Critères des champs Numéro, Monétaire et


NuméroAuto
IST-D

Pour inclure des Utilisez


enregistrements qui... ce critère Résultat de la requête

Correspondent 100 Renvoie les enregistrements dans lesquels le prix unitaire du produit est 100 €.
exactement à une valeur,
comme 100

Ne correspondent pas à Pas 1000 Renvoie les enregistrements dans lesquels le prix unitaire du produit n'est pas 1000 €.
une valeur, comme 1000

Contiennent une valeur < 100 Renvoie les enregistrements pour lesquels le prix unitaire est inférieur à 100 €
inférieure à une autre, <= 100 (<100). La deuxième expression (<=100) affiche les enregistrements dans lesquels le
comme 100 prix unitaire est inférieur ou égal à 100 €.

Contiennent une valeur >99,99 Renvoie les enregistrements dans lesquels le prix unitaire est supérieur à 99,99 €
supérieure à une autre, >=99,99 (>99,99). La deuxième expression affiche les enregistrements dans lesquels le prix
comme 99,99 unitaire est supérieur ou égal à 99,99 €.

Contiennent l'une ou 20 ou 25 Renvoie les enregistrements dans lesquels le prix unitaire est 20 € ou 25 €.
l'autre de deux valeurs,
comme 20 ou 25

Contiennent une valeur >49,99 et Renvoie les enregistrements dans lesquels le prix unitaire est compris entre 49,99 € et
comprise dans une plage <99,99 99,99 € non inclus.
spécifique ou
Entre
50 et 100

Contiennent une valeur <50 ou Renvoie les enregistrements dans lesquels le prix unitaire n'est pas compris entre 50 €
hors plage >100 et 100 €.

Contiennent l'une des En (20, 25, Renvoie les enregistrements dans lesquels le prix unitaire est 20 €, 25 € ou 30 €.
valeurs spécifiées 30)

Contiennent une valeur Comme Renvoie les enregistrements dans lesquels le prix unitaire se termine par « 4,99 »,
se terminant par les "*4,99" comme 4,99 €, 14,99 €, 24,99 €, etc.
chiffres spécifiés

REMARQUE Les caractères * et %, lorsqu'ils sont utilisés dans une expression,


représentent tout nombre de caractères (ils sont également appelés des caractères
génériques). Le caractère % ne peut pas être utilisé dans la même expression que le
caractère *, ni dans une expression avec le caractère ?. Vous pouvez utiliser le
caractère générique % dans une expression qui contient également le caractère
générique _.

Contiennent des valeurs Est Null Renvoie les enregistrements dont le champ PrixUnitaire ne contient aucune valeur.
NULL (ou manquantes)

Contiennent des valeurs Est Pas Renvoie les enregistrements dont le champ PrixUnitaire contient une valeur
non NULL Null

Critères des champs Date/Heure


IST-D

Pour inclure des


enregistrements qui... Utilisez ce critère Résultat de la requête

Correspondent exactement à #02.02.06# Renvoie les enregistrements de


une valeur, transactions effectuées le
comme le 2/2/2006 2 février 2006. N'oubliez pas d'insérer
le caractère # de part et d'autre des
valeurs de date afin qu'Access puisse
distinguer les valeurs de date des
chaînes de texte.

Ne correspondent pas à une Pas #3/3/2006# Renvoie les enregistrements des


valeur, comme 2/2/2006 transactions qui n'ont pas eu lieu le
3 février 2006.

Contiennent des valeurs < #2/2/2006# Renvoie les enregistrements de


antérieures à une date transactions effectuées avant le
donnée, comme le 2/2/2006 2 février 2006.

Pour afficher les transactions


effectuées à cette date ou avant,
utilisez l'opérateur <= plutôt que <.

Contiennent des valeurs > #2/2/2006# Renvoie les enregistrements de


postérieures à une date transactions effectuées après le
donnée, comme le 2/2/2006 2 février 2006.

Pour afficher les transactions


effectuées à cette date ou après,
utilisez l'opérateur >= plutôt que >.

Contiennent des valeurs >#2/2/2006# et <#4/2/2006# Renvoie les enregistrements dont les
incluses dans une plage de transactions ont eu lieu entre les
dates 2 et 4 février 2006.

Vous pouvez également faire appel à


l'opérateur Entre pour filtrer une
plage de valeurs. Par exemple, Entre
#2/2/2006# et #4/2/2006# est
identique à >#2/2/2006# et
IST-D

<#4/2/2006#.

Contiennent des valeurs hors <#2/2/2006# ou >#4/2/2006# Renvoie les enregistrements dont les
plage transactions ont eu lieu avant le
2 février 2006 ou après le
4 février 2006.

Contiennent l'une de deux #2/2/2006# ou #3/2/2006# Renvoie les enregistrements des


valeurs, comme 2/2/2006 ou transactions effectuées le
3/2/2006 2 février 2006 ou le 3 février 2006.

Contiennent l'une des En (#1/2/2006#, #1/3/2006#, #1/4/2006#) Renvoie les enregistrements des
valeurs spécifiées transactions effectuées le
1er février 2006, le 1er mars 2006 ou
le 1er avril 2006.

Contiennent la date d'un PartDate("m", [DateVente]) = 12 Renvoie les enregistrements des


mois donné (quelle que soit transactions effectuées en décembre,
l'année), comme Décembre quelle que soit l'année.

Contiennent la date d'un PartDate("t", [DateVente]) = 1 Renvoie les enregistrements des


trimestre donné (quelle que transactions effectuées le premier
soit l'année), comme le trimestre, quelle que soit l'année.
premier trimestre

Contiennent la date du jour Date( ) Renvoie les enregistrements des


transactions effectuées le jour même.
Si la date du jour est le 2/2/2006, les
enregistrements dont le champ
DateCommande est défini sur
2 février 2006 sont affichés.

Contiennent la date du jour Date()-1 Renvoie les enregistrements des


précédent transactions effectuées le jour
précédent. Si la date du jour est le
2/2/2006, les enregistrements du
1er février 2006 sont affichés.

Contiennent la date du jour Date() + 1 Renvoie les enregistrements des


suivant transactions effectuées le jour suivant.
Si la date du jour est le 2/2/2006, les
enregistrements du 3 février 2006
sont affichés.

Contiennent les dates de la PartDate("ss", [DateVente]) = PartDate("ss", Date()) et Renvoie les enregistrements des
semaine en cours Année( [DateVente]) = Année(Date()) transactions effectuées pendant la
semaine en cours. La semaine
commence le dimanche et se termine
le samedi.

Contiennent les dates de la Année([DateVente])* 53 + PartDate("ss", [DateVente]) Renvoie les enregistrements des
semaine précédente = Année(Date())* 53 + PartDate("ss", Date()) - 1 transactions effectuées pendant la
semaine précédente. La semaine
commence le dimanche et se termine
le samedi.

Contiennent les dates de la Année([DateVente])* 53 + PartDate("ss", [DateVente]) Renvoie les enregistrements des
semaine suivante = Année(Date())* 53 + PartDate("ss", Date()) +1 transactions qui auront lieu la semaine
suivante. La semaine commence le
dimanche et se termine le samedi.

Contiennent une date Entre Date() et Date()-6 Renvoie les enregistrements des
enregistrée au cours transactions effectuées au cours
des 7 derniers jours des 7 derniers jours. Si la date du jour
est le 2/2/2006, les enregistrements
compris entre le 24 janvier 2006 et le
2 février 2006 sont affichés.

Contiennent une date du Année([DateVente]) = Année(Maintenant()) Et Renvoie les enregistrements du mois


en cours. Si la date du jour est le
IST-D

mois en cours Mois([DateVente]) = Mois(Maintenant()) 2/2/2006, les enregistrements du mois


de février 2006 sont affichés.

Contiennent une date du Année([DateVente])* 12 + PartDate("m", [DateVente]) Renvoie les enregistrements du mois
mois précédent = Année(Date())* 12 + PartDate("m", Date()) - 1 précédent. Si la date du jour est le
2/2/2006, les enregistrements du mois
de janvier 2006 sont affichés.

Contiennent une date du Année([DateVente])* 12 + PartDate("m", [DateVente]) Renvoie les enregistrements du mois
mois suivant = Année(Date())* 12 + PartDate("m", Date()) +1 suivant. Si la date du jour est le
2/2/2006, les enregistrements du mois
de mars 2006 sont affichés.

Contiennent une date Entre Date( ) Et AjDate("m", -1, Date( )) Un mois d'enregistrements de ventes.
enregistrée au cours Si la date du jour est le 2/2/2006, les
des 30 ou 31 derniers jours enregistrements compris entre le
2 janvier 2006 et le 2 février 2006
sont affichés.

Contiennent une date du Année([DateVente]) = Année(Maintenant()) Et Renvoie les enregistrements du


trimestre en cours PartDate("t", Date()) = PartDate("t", Maintenant()) trimestre en cours. Si la date du jour
est le 2/2/2006, les enregistrements
du premier trimestre 2006 sont
affichés.

Contiennent une date du Année([DateVente])*4+PartDate("t",[DateVente]) = Renvoie les enregistrements du


trimestre précédent Année(Date())*4+PartDate("t",Date())- 1 trimestre précédent. Si la date du jour
est le 2/2/2006, les enregistrements
du dernier trimestre 2005 sont
affichés.

Contiennent une date du Année([DateVente])*4+PartDate("t",[DateVente]) = Renvoie les enregistrements du


trimestre suivant Année(Date())*4+PartDate("t",Date())+1 trimestre suivant. Si la date du jour
est le 2/2/2006, les enregistrements
du deuxième trimestre 2006 sont
affichés.

Contiennent une date de Année([DateVente]) = Année(Date()) Renvoie les enregistrements de


l'année en cours l'année en cours. Si la date du jour est
le 2/2/2006, les enregistrements de
l'année 2006 sont affichés.

Contiennent une date de Année([DateVente]) = Année(Date()) - 1 Renvoie les enregistrements des


l'année précédente transactions effectuées au cours de
l'année précédente. Si la date du jour
est le 2/2/2006, les enregistrements
de l'année 2005 sont affichés.

Contiennent une date de Année([DateVente]) = Année(Date()) +1 Renvoie les enregistrements des


l'année suivante transactions effectuées au cours de
l'année suivante. Si la date du jour est
le 2/2/2006, les enregistrements de
l'année 2007 sont affichés.

Contiennent une date Année([DateVente]) = Année(Date()) et Renvoie les enregistrements des


comprise entre le 1er janvier Mois([DateVente]) <= Mois(Date()) et transactions effectuées entre le
et la date du jour Jour([DateVente]) <= Jour (Date()) 1er janvier de l'année en cours et la
(enregistrements du cumul date du jour. Si la date du jour est
annuel) le 2/2/2006, les enregistrements
compris entre le 1er janvier 2006 et le
2 février 2006 sont affichés.

Contiennent une date passée < Date() Renvoie les enregistrements des
transactions antérieures à la date du
jour.

Contiennent une date future > Date() Renvoie les enregistrements des
transactions postérieures à la date du
jour.

Filtrent les valeurs NULL (ou Est Null Renvoie les enregistrements dont la
IST-D

manquantes) date de transaction est manquante.

Filtrent les valeurs non NULL Est Pas Null Renvoie les enregistrements dont la
date de transaction est connue.

Critères des autres champs

Champs Oui/Non Dans la ligne Critères, tapez Oui pour inclure les enregistrements dont la case à cocher est

activée. Tapez Non dans le cas contraire.

Pièces jointes Dans la ligne Critères, tapez Est Null pour inclure les enregistrements qui ne contiennent pas de

pièces jointes. Tapez Est Pas Null dans le cas contraire.

Champs Liste de choix Il existe deux types de champs Liste de choix : ceux qui recherchent des valeurs dans

une source de données existante (à l'aide d'une clé étrangère) et ceux qui se basent sur une liste de valeurs

spécifiées lors de la création du champ.

Les champs Liste de choix basés sur une liste de valeurs spécifiées sont de type Texte ; les critères autorisés

sont identiques à ceux des autres champs de texte

Vous aimerez peut-être aussi