Exercice Langage SQL : Gestion Bibliothèque (Opérateurs Ensemblistes)
Rédigé par , Publié le 14 Décembre 2011, Mise à jour le Mardi, 30 Novembre 1999 00:00Exercice sur les Opérateurs Ensemblistes
Objectif : Pouvoir réaliser des Requêtes en SQL.
Enoncé de l'Exercice:
On considère le schéma relationnel suivant qui modélise une application sur la gestion d’une Bibliothèque
Créer les requêtes suivantes:
1 - Réunissez dans une seule liste tous les titres de livres contenant le mot " conte " et tous les titres contenant le mot " livre ".
2 - On veut afficher le titre des livres qui contiennent à la fois "conte" et "légende".
3 - Affichez dans une colonne répertoire lesnoms et téléphones des emprunteurs et des editeurs.
5 - Affichez dans une colonne répertoire lesnoms et téléphones des emprunteurs et des editeurs.
6 - Sélectionnez sur une colonne Lecteurs/Auteurs tous les emprunteurs qui sont aussi auteurs.
7 - Affichez la liste detous les auteurs qui ne sont pas leur prorpres éditeurs.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
-- 1 - Réunissez dans une seule liste tous les titres de livres contenant le mot " conte " et tous les titres contenant le mot " livre ". SELECT titre FROM livres WHERE UPPER(titre) LIKE '%CONTE%' UNION SELECT titre FROM livres WHERE LOWER(titre) LIKE '%livre%' ORDER BY 1 DESC; -- 2ème Suggestion de réponse avec la clause OR SELECT titre FROM livres WHERE UPPER(titre) LIKE '%CONTE%' OR LOWER(titre) LIKE '%livre%' ORDER BY TITRE DESC; -- 2 - On veut afficher le titre des livres qui contiennent à la fois "conte" et "légende". SELECT titre FROM livres WHERE LOWER(titre)LIKE '%légende%' intersect SELECT titre FROM livres WHERE LOWER(titre)LIKE '%conte%'; -- 5 - Affichez dans une colonne répertoire lesnoms et téléphones des emprunteurs et des editeurs. SELECT nom AS "Repertoire", tel FROM emprunteurs UNION SELECT nom, tel FROM editeurs; -- 6 - Sélectionnez sur une colonne Lecteurs/Auteurs tous les emprunteurs qui sont aussi auteurs. SELECT nom AS "Lecteurs/Auteurs" FROM emprunteurs INTERSECT SELECT nom FROM auteurs; |