Correction td
CLASSIFICATION(NUMRUB, LIBRUB) OUVRAGE(NUMOUVR, NOMOUVR, ANNEEPARU, NOMED, NUMRUB) ECRIVAIN(NUMECR, PRENOMECR, NOMECR, PAYSECR, LANGUECR)
Corrigé du TD 2 - Requêtes SQL
EDITEUR(NOMED, ADRED, CPED, VILLEED,TELED) DEPOT(NUMDEP, NOMDEP, ADRDEP, CPDEP,VILLEDEP) DEPOT(NUMDEP NOMDEP ADRDEP CPDEP VILLEDEP) ECRIRE(NUMOUVR, NUMECR) TARIFER(NUMOUVR, DATEDEB, PRIXVENTE) CATALOGUE(DATEDEB, DATEFIN) ( , ) STOCKER(NUMOUVR, NUMDEP, QTESTOCK)
15
16
1: Liste des noms des éditeurs situés à Paris triés par ordre alphabétique SELECT NOMED FROM EDITEUR WHERE VILLEED = "Paris" ORDER BY NOMED
2: Liste des ouvrage (titres) ayant été édités entre (ANNEEPARU)1986 et 1987 SELECT NOMOUVR FROM OUVRAGE WHERE ANNEEPARU >=1986 AND ANNEEPARU 0
OUVRAGE(NUMOUVR, NOMOUVR, ANNEEPARU, NOMED, NUMRUB) STOCKER(NUMOUVR, NUMDEP, STOCKER(NUMOUVR NUMDEP QTESTOCK)
21
22
7: Liste des auteurs (nom + prénom) ayant écrit des livres coûtant au moins 30 dh
SELECT DISTINCT NOMECR, PRENOMECR FROM TARIFER, ECRIRE, ECRIVAIN WHERE ECRIVAIN NUMECR = ECRIRE NUMECR ECRIVAIN.NUMECR ECRIRE.NUMECR AND ECRIRE.NUMOUVR = TARIFER.NUMOUVR AND PRIXVENTE >= 30
ECRIVAIN(NUMECR, PRENOMECR, NOMECR, PAYSECR, ECRIVAIN(NUMECR PRENOMECR NOMECR PAYSECR LANGUECR) ECRIRE(NUMOUVR, NUMECR) TARIFER(NUMOUVR, DATEDEB, PRIXVENTE)
Remarques : la table OUVRAGE est inutile
23
8: Liste des auteurs (nom + prénom) ayant écrit des livres sur le thème des “finances publiques” (LIBRUB) SELECT DISTINCT NOMECR, PRENOMECR FROM CLASSIFICATION, OUVRAGE, ECRIRE, ECRIVAIN WHERE CLASSIFICATION NUMRUB = OUVRAGE.NUMRUB CLASSIFICATION.NUMRUB OUVRAGE NUMRUB AND OUVRAGE.NUMOUVR = ECRIRE.NUMOUVR AND ECRIRE.NUMECR = ECRIVAIN.NUMECR AND LIBRUB = "finances publiques " CLASSIFICATION(NUMRUB, LIBRUB) OUVRAGE(NUMOUVR, NOMOUVR, ANNEEPARU, NOMED, OUVRAGE(NUMOUVR NOMOUVR ANNEEPARU NOMED NUMRUB) ECRIRE(NUMOUVR, NUMECR) ECRIVAIN(NUMECR, PRENOMECR, NOMECR, PAYSECR, ECRIVAIN(NUMECR PRENOMECR NOMECR PAYSECR