Post on 25-Jan-2016
description
Access
Les requêtes
Les tables:1. La table « éditeur » :
Contient tous les renseignements sur les éditeurs
2. La table « médias » :
Contient les auteurs et les livres qui ont été édités par éditeurs
Utilisons ces deux tables
Requête 1: Faire apparaître les livres édités par chaque éditeur en mode feuille
1. Choisis tout d’abord la table que l’on va utiliser.
2. Puis comment on veut que cela soit trié.Pour
pouvoir passer en mode création ou mode SQL
Sol
R1: En mode feuille de données
Voilà ce que l’on obtient,
2500 livres édités.
R1: En mode SQL
SELECT= champs choisis dans les différentes tables
FROM= tables qui sont utilisées
GROUP BY= groupé par
ORDER BY= dans l’ordre qu’on aimerait que cela soit trié
Requête 2: Faire apparaître l’adresse des éditeurs en mode SQL
Il y a une erreur, mais laquelle?
Si on regarde attentivement, on se rend compte qu’access a attribué à chaque auteur une adresse différente. Il faut donc faire apparaître une seule adresse par auteur. Comment faire?
Pour que cela fonctionne correctement, il faut rajouter le « where ».
On met « distinct » pour qu’il n’y ait pas de redondance
On met le « where » car il faut qu’il sache que les éditeurs de la table « R_titres » sont les mêmes éditeurs de la table « Editeurs »
Sol
R2: Mode création
On voit l’adresse pour chaque éditeur
Requête 3: Faire apparaître les livres édités par un auteur en particulier ( par exemple Albert
René)
En mode feuille de données :
Dans ce cas-ci, il faut rajouter un critère le nom de l’auteur.
R3: Feuille de données
On voit donc tous les livres édités par Albert René. Il y en a 100.
Requête 4 : faire apparaître tous les livres sortis en 2000
Décoché, la colonne « Editeur » n’apparaîtra pas
Il faut indiquer les dates entre lesquelles nous voulons faire apparaître les livres et ne pas oublier le # quand il s’agit de dates
SQL
R4: en mode SQL
Correspond au critère que l’on a mis en mode création. C’est-à-dire qu’il faut prendre tous les livres sortis entre 01.01.2000 et le 31.12.2000
SOL
R4: Feuilles de données
On obtient 175 livres sortis en 2000.
Requête 5: Faire apparaître le titre des livres sorti en 1974 en SQL
HAVING utilisé pour
« * » Utilisé pour dire qu’il faut prendre même s’il y a quelque chose devant 1974.
SOL
R5: Feuilles de données
On obtient donc 2 livres qui sont
sortis en 1974
Requête 6 : Quels sont les auteurs qui ont participé à la création de Lucky Luke (en SQL)
Il faut donc lui donner comme critère « lucky luke » et surtout ne pas oublier le « distinct » pour ne pas avoir de redondance.
En mode création
R6: En mode création
Simplment ajouter le critère « lucky luke »
R6 : en mode feuille de données
Voilà ce que l’on doit obtenir
Requête 7 : Faire apparaître le dernier livre édité par chaque éditeur
= un lien entre les deux tables car l’éditeur dans les deux est le même.
R7: en mode feuille de données
Ce sont donc bien les derniers livres édités par les éditeurs
Requête 8 : Faire apparaître tous les auteurs qui commencent par un « R » (nom ou prénom)
On met une « * » pour dire qu’on prend n’importe quoi après le R.
R8: en mode SQL et en mode feuille de données
En mode SQL
Comme critère, on met le « r * »
Ce que l’on obtient
Que constate-t-on? Il y a des doublons
R8: Faire disparaître les doublons
Ce qu’il faut faire…
Reprenons le langage SQL…
Que manque-t-il pour ne pas avoir de redondance?
Rajoutons le « distinct » pour éviter toute redondance
R8: Et qu’est-ce qui se passe?
On obtient donc une requête sans redondance et avec tous les auteurs qui commencent par un « R »
Requête 9: Faire apparaître les champs dans lesquels il n’y a rien.
On va lui demander d’afficher tous les champs vides où devraient se trouver les numéros de téléphone.
Créons tout d’abord un lien entre les deux tables.
On met « null » pour dire qu’il faut faire apparaître les lignes où il n’y a rien indiqué.
R9: en mode SQL et mode Feuille de données
SQL
En mode feuille de données