laini hyacinthe 2 e nsse access les requêtes laini hyacinthe 2 e nsse plan 1.quelques...
TRANSCRIPT
Laini Hyacinthe 2e NSSE
Access
Les requêtes
Laini Hyacinthe 2e NSSE
Plan
1. Quelques définitions2. À quoi servent les requêtes3. La projection 4. Exercice (1.1.)
1. Réponse2. Finalité3. SQL
5. Exercice (1.2.)1. Réponse2. Finalité3. SQL
Laini Hyacinthe 2e NSSE
6. Projection
7. Exercice (2.1.)1. Réponse
2. Finalité
3. SQL
4. SQL bonus
5. Réponse SQL bonus
8. Exercice (2.2.)1. Réponse
2. Finalité
3. SQL
9. Critères1. Critères/opérateurs
2. Autres
Laini Hyacinthe 2e NSSE
10. Exercice (3.1)1. Réponse
2. Finalité
3. SQL
11. Exercice (3.2.)1. Réponse
2. Finalité
3. SQL
12. Jointure1. Exercice (4.1)
2. Finalité
3. SQL
13. Doublons1. Exercice
Laini Hyacinthe 2e NSSE
14.Exercice récapitulatifs1. Exercice (5.1)
2. Réponse
3. Finalité
4. SQL
5. Exercice (5.2)
6. Finalité
7. SQL
Laini Hyacinthe 2e NSSE
Quelques définitions
• Les 3 fonctions d’une requête:– La sélection simple ou projectionprojection permet de réaliser les vues
précitées ; – La sélectionsélection est l'outil de recherche. Cette requête est dotée de
deux perfectionnements importants (la jointure et le regroupement) ;
– Les opérations ensemblistesopérations ensemblistes Elles permettent de regrouper dans une même table des enregistrements provenant de deux tables différentes ;
– L'analyse croisée est une spécificité d'Access. Comme son nom l'indique, c'est un outil d'analyse qui permet, sous certaines conditions, de réorganiser complètement une table.
Plan
Laini Hyacinthe 2e NSSE
À quoi servent les requêtes ?
• La réalisation de vues Pour appréhender, en partie ou en totalité, le contenu de la base, il faut rassembler les données utiles dans une seule table, que l'utilisateur peut consulter directement ou via un formulaire. Pour ce faire, on sélectionne des colonnes dans différentes tables, et on met les lignes en correspondance grâce aux relations ;
• La maintenance de la BDD.
• La recherche d'information dans la BDD.
Plan
Laini Hyacinthe 2e NSSE
1.la projection
• 1.1. Exercice
- Tu dois faire l’inventaire de tous les livres de la bibliothèque. Il ne te faut donc que la liste des livres.
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
• 1.2. Exercice
– Reprend la même requête mais trie-la par ordre alphabétique pour pouvoir trouver plus vite le titre des livres.
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
2. La sélection
• 2.1. ExerciceTon patron te demande la liste des livres par
auteur. Tu as toujours besoin d’une seule table mais de plusieurs enregistrements dans ta requête.
Réponse Finalité SQL
SQL bonus Réponse SQL bonus
Plan
Laini Hyacinthe 2e NSSE
• 2.2. Exercice
• Tu dois joindre tous les éditeurs pour leur demander de t’envoyer un exemplaire de leurs derniers livres pour mettre ta bibliothèque à jour.
Maintenant que tu es un pro, tu dois réussir sans aucunes indications.
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
Compliquons le tout
• Cela te parait trop simple, nous allons donc augmenter les difficultés en ajoutant les critères.
• Mais qu’est ce qu’un critère?
On peut dire que cela sert à affiner ta recherche. Pour plus d’informations clique sur le lien suivant.
Critères
Plan
Laini Hyacinthe 2e NSSE
Quelques critères/opérateurs
• Entre cardinaux : utilisés pour les dates• Les guillemets : recherche d’une chaîne de caractères
exacts.• Les astérisques : peuvent être placées n'importe où, et
non pas seulement en début ou en fin de chaîne. Elles permettent de rechercher sans connaître l’expression exacte.
• Le point d’interrogation : implique la présence d'un seul caractère.
• Voici pour les plus courants mais il en existe bien d’autres.
Plan
Laini Hyacinthe 2e NSSE
Autres opérateurs• Les arithmétiquesIls s'appliquent aux données numériques et monétaires,
mais aussi aux dates.= (égal), < (inférieur), <= (inférieur ou égal), > (supérieur), >= (supérieur ou égal), <> (différent).
Voilà pour les plus généraux, nous verrons les autres par la suite.
Plan
Laini Hyacinthe 2e NSSE
3. Projection
• 3.1. Exercice
• Tu as besoin de tous les livres écrits par ROBA. Tu vas devoir te servir d’un critère, mais lequel?
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
• 3.2. Exercice
• Un lecteur voudrait connaître tous les livres écrits le jour de sa naissance
(le 01/04/1975) .
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
Les jointures
• 4.1.Exercice
• Tu as besoin de savoir quel auteur travaille avec quel éditeur.
Il te faudra donc les deux tables.Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
Exercices récapitulatifs
• 5.1. Exercice
• Tu as besoin de connaître le premier livre publié par chaque auteur.
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
• 5.2. Exercice
• Tu as besoin des titres des livres de la famille informatique.
Réponse Finalité SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse exercice 1.1.1.
2.Tu as juste besoin de la table qui contient les adresses, donc la table média.
3. Dans la partie champs, tu dois rentrer le champ dont tu as besoin donc titre.
4. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Réponse 1.1. finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 1.1. SQL
• SELECT Medias.Titre
• FROM Medias;
Attention, en langage SQL on finit toujours par
un « ; »
Plan
Laini Hyacinthe 2e NSSE
Très bien !!!
Tu as réussi ta première requête,
C’était la plus simple, maintenant attaquons-nous à plus difficile !!!
Laini Hyacinthe 2e NSSE
Réponse exercice 1.2.1.2.3.Les trois premières parties pour créer une requête sont les
mêmes.4. Dans la partie tri, tu dois choisir croissant.
5. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Réponse 1.2. finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 1.2. SQL
• Tu avais:– SELECT Medias.Titre– FROM Medias;
• Tu as:– SELECT Medias.Titre– FROM Medias– ORDER BY
Medias.Titre;
Mais qu’est-ce qui a changé?
Plan
Laini Hyacinthe 2e NSSE
Bravo !!!
• Hé Voila 2 requêtes faites en quelques minutes.
Laini Hyacinthe 2e NSSE
Réponse exercice 2.1.1. La première étape reste la même pour toutes les requêtes.
2.Tu as juste besoin de la table qui contient les titres et les auteurs donc la table médias
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc titre et auteur.4. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Réponse 2.1. finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 2.1. SQL
• À la première requête, tu avais:– SELECT Medias.Titre– FROM Medias;
• Maintenant tu as:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias;
Mais qu’est-ce qui a changé?
Question bonus
Plan
Laini Hyacinthe 2e NSSE
Question bonus 2.1.
• Si tu ajoutes le tri des livres par ordre alphabétique en SQL, que vas-tu obtenir?
Réponse
Plan
Laini Hyacinthe 2e NSSE
Réponse bonus 2.1.
• Tu avais:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias;
• Tu as:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias– ORDER BY
Medias.Titre;
Mais qu’est-ce qui a changé?
Plan
Laini Hyacinthe 2e NSSE
Magnifique !!!
• Tu vas être un pro des requêtes.
Laini Hyacinthe 2e NSSE
Réponse exercice 2.2.1. La première étape reste la même pour toutes les requêtes.2.Tu as juste besoin de la table qui contient les numéros de téléphone et les auteurs donc la table éditeur
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc titre et auteur.
4. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
2.2. Finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 2.2. SQL
• Tu avais:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias;
• Tu as:– SELECT
Editeurs.Editeur, Editeurs.Telephone
– FROM Editeurs;
Mais qu’est-ce qui a changé?
La table
Plan
Laini Hyacinthe 2e NSSE
Whaou !!!
• Quel bout de chemin parcouru.
Laini Hyacinthe 2e NSSE
Réponse exercice 3.1.1. La première étape reste la même pour toutes les requêtes.2.Tu as juste besoin de la table qui contient les titres et les auteurs donc la table média.
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc titre et auteur.
5. Tu obtiens:
4. Dans la partie critères, tu dois mettre des guillemets de chaque coté de ROBA pour pouvoir obtenir que les titres de ROBA.
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 3.1. SQL
• Tu te souviens de ta première requête?– SELECT Medias.Titre– FROM Medias;
• Observe celle-ci:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias– WHERE
(((Medias.Auteur)="roba"));
Mais qu’est-ce qui a changé?
Le select (ce dont tu as besoin)Le where (critère)
-
Plan
Laini Hyacinthe 2e NSSE
Impressionnant
• Alors tu n’y croyais pas je parie.
Laini Hyacinthe 2e NSSE
Réponse exercice 3.2.1. La première étape reste la même pour toutes les requêtes.
2.Tu as juste besoin de la table qui contient les titres et les dates donc la table médias.
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc titre et date.
5. Tu obtiens:
4. Dans la partie critères, tu dois mettre des cardinaux de chaque coté de la date pour pouvoir obtenir la date recherchée
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Finalité
Hé oui, il n’y en a qu’un
seul
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 3.2. SQL
• Pour une date:– SELECT
Medias.Titre, Medias.Date
– FROM Medias– WHERE
(((Medias.Date)=#4/1/1975#));
• Pour une chaîne de caractères:– SELECT Medias.Titre,
Medias.Auteur– FROM Medias– WHERE
(((Medias.Auteur)="roba"));
Ne pas oublier
Plan
Laini Hyacinthe 2e NSSE
Excellent !!!
• Voila tu connais une option de plus d’Access
Encore un petit effort !!!
Laini Hyacinthe 2e NSSE
Réponse exercice 4.1.1. La première étape reste la même pour toutes les requêtes.
2.Tu as juste besoin des deux tables donc la table médias et la table éditeurs.
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc auteur et éditeur.
4. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Finalité
Doublons
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 4.1. SQL
• SELECT Medias.Auteur, Editeurs.Editeur
• FROM Editeurs, Medias;
Plan
Laini Hyacinthe 2e NSSE
Doublons
Cela ne te sert à rien de voir tous les auteurs, il existe donc un moyen de supprimer les doublons.
Il te suffit de:- cliquer sur en mode création- choisir regroupement dans l’option opération (par défaut).
En SQL il faut noter DISTINCT derrière select.
Plan
Laini Hyacinthe 2e NSSE
Cela donne• Avant: • Après:
Plan
Laini Hyacinthe 2e NSSE
Très très bien
• Sur un seul exercice tu as appris à faire des jointures et à supprimer les doublons.
Laini Hyacinthe 2e NSSE
Réponse exercice 5.1.1. La première étape reste la même pour toutes les requêtes.2.Tu as juste besoin des deux tables donc la table média et la table éditeur.
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc date et éditeur.
5. Tu obtiens:
SQLFinalité
Plan
Laini Hyacinthe 2e NSSE
Finalité
SQL
Plan
Laini Hyacinthe 2e NSSE
Réponse 5.1. SQL• SELECT Editeurs.Editeur,
Min(Medias.Date) AS MinDeDate
• FROM Editeurs, Medias
• GROUP BY Editeurs.Editeur
• ORDER BY Editeurs.Editeur;
Association
Plan
Laini Hyacinthe 2e NSSE
Impréssionant
• Tu sais en faire des choses.
Laini Hyacinthe 2e NSSE
Réponse exercice 5.2.
1. La première étape reste la même pour toutes les requêtes.
2.Tu as juste besoin d’une seule table donc la table médias.
3. Dans la partie champ, tu dois rentrer les champs dont tu as besoin donc famille et titre.
5. Tu obtiens:
Plan
SQLFinalité
Laini Hyacinthe 2e NSSE
FinalitéPlan
SQL
Laini Hyacinthe 2e NSSE
Réponse 5.2. SQL
SELECT Medias.Famille, Medias.Titre
FROM Editeurs, Medias
WHERE (((Medias.Famille) Like "*informatique*"));
Plan
Laini Hyacinthe 2e NSSE
Félicitation