- Exercice Langage SQL : Une Médiathèque (1/2) - Licence Fondamentale d'Informatique
lundi 25 mars 2013

Exercice Langage SQL : Une Médiathèque (1/2)

On considère le schéma relationnel suivant qui modélise une application sur la gestion de livres et de disques dans une Médiathèque :
                 Disque (CodeOuv, Titre, Style, Pays, Année, Producteur)
                 E_Disque (CodeOuv, NumEx, DateAchat, Etat)
                 Livre (CodeOuv, Titre, Editeur, Collection)
                 E_Livre (CodeOuv, NumEx, DateAchat, Etat)
                 Auteurs (CodeOuv, Identité)
                 Abonne (NumAbo, Nom, Prénom, Rue, Ville, CodeP, Téléphone)
                 Prêt (CodeOuv, NumEx, DisqueOuLivre, NumAbo, DatePret)
                 Personnel (NumEmp, Nom, Prénom, Adresse, Fonction, Salaire)
Travail à Faire :
Traduisez en SQL les questions suivantes :
      1) Quel est le contenu de la relation Livre ?
      2) Quels sont les titres des romans édités par Gava-Editor ?
      3) Quelle est la liste des titres que l’on retrouve à la fois comme titre de disque et titre de livre ?
      4) Quelle est l’identité des auteurs qui ont fait des disques et écrit des livres ?
      5) Quels sont les différents style de disques proposés ?
      6) Quel est le salaire annuel des membres du personnel gagnant plus de 20000 euros en ordonnant le résultat par salaire descendant et nom croissant ?

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) Quel est le contenu de la relation Livre ?
 
SELECT * FROM Livre
 
-- 2) Quels sont les titres des romans édités par Gava-Editor ?
 
SELECT Titre FROM Livre WHERE Editeur="Droit-Edition"
AND Genre="Polar"
 
-- 3) Quelle est la liste des titres que l’on retrouve à la fois comme titre de disque et titre de livre ?
 
SELECT D.Titre FROM Disque D, Livre L 
WHERE D.Titre=L.Titre
 
-- 4) Quelle est l’identité des auteurs qui ont fait des disques et écrit des livres ?
 
SELECT A1.Identité FROM Disque D, Livre L, Auteur A1,Auteur A2
WHERE D.CodeOuv = A1.CodeOuv
AND L.CodeOuv=A2.CodeOuv AND A1.Identité=A2.Identité
 
-- 5) Quels sont les différents style de disques proposés ?
 
SELECT DISTINCT Style FROM Disque
 
-- 6) Quel est le salaire annuel des membres du personnel gagnant plus de 20000 euros en ordonnant le résultat par salaire descendant et nom croissant ?
 
SELECT Nom, Prénom, Salaire*12 AS Salaire_Annuel
FROM Personnel 
WHERE Salaire_Annuel>20000 
ORDER BY Salaire DESC, Nom ASC

0 commentaires:

Enregistrer un commentaire

 
-