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 Pour pouvoir passer en mode création ou mode SQL 1. Choisis tout d’abord la table que l’on va utiliser. 2. Puis comment on veut que cela soit trié. 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 « * » Utilisé pour dire qu’il faut prendre même s’il y a quelque chose devant 1974. HAVING utilisé pour 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) En mode création Il faut donc lui donner comme critère « lucky luke » et surtout ne pas oublier le « distinct » pour ne pas avoir de redondance. 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 Ce que l’on obtient Comme critère, on met le « r * » 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 En mode feuille de données SQL