Requtes SQL

  • View
    219

  • Download
    0

Embed Size (px)

Text of Requtes SQL

  • Requtes SQLExercices corrigs

    Frdric Gava (MCF)

    gava@univ-paris12.frLACL, btiment P2 du CMC, bureau 223

    Universit de Paris XII Val-de-Marne

    61 avenue du Gnral de Gaulle

    94010 Crteil cedex

  • Exercice 1

  • 3/10

    Les livraisons, la BDSoit la base relationnelle de donnes PUF de schma :

    U(NumU, NomU, VilleU)

    P(NumP, NomP, Couleur, Poids)

    F(NumF, NomF, Statut, VilleF)

    PUF(NumP, NumU, NumF, Quantit)

    dcrivant le fait que (avec des DF videntes) :U : une usine est dcrite par son numro NumU, son nom NomU et la ville

    VilleU o elle est situe

    P : un produit est dcrit par son numro NumP, son nom NomP, sa couleur et

    son poids

    F : un fournisseur est dcrit par son numro NumP, son nom NomF, son statut

    (sous-traitant, client) et la ville VilleF o il est domicili

    PUF : le produit de numro NumP a t dlivr lusine de numro NumU par

    le fournisseur de numro NumF dans une quantit donne

  • 4/10

    Exprimez en SQL (1)1) Ajouter un nouveau fournisseur avec les attributs de votre choix

    2) Supprimer tous les produits de couleur noire et de numros compris entre 100 et 1999

    3) Changer la ville du fournisseur 3 par Toulouse

    4) Donnez le numro, le nom, la ville de toutes les usines

    5) Donnez le numro, le nom, la ville de toutes les usines de Paris

    6) Donnez les numros des fournisseurs qui approvisionnent lusine de numro 2 en produit de numro 100

    7) Donnez les noms et les couleurs des produits livrs par le fournisseur de numro 2

    8) Donnez les numros des fournisseurs qui approvisionnent lusine de numro 2 en un produit rouge

    9) Donnez les noms des fournisseurs qui approvisionnent une usine de Paris ou de Crteil en produit rouge

    10) Donnez les numros des produits livrs une usine par une fournisseur de la mme ville

  • 5/10

    Exprimez en SQL (2)11) Donnez les numros des produits livrs une usine de Paris par un

    fournisseur de Paris.

    12) Donnez les numros des usines qui ont au moins un fournisseur qui nest pas de la mme ville

    13) Donnez les numros des fournisseurs qui approvisionnent la fois des usines de numros 2 et 3

    14) Donnez les numros des usines qui utilisent au moins un produit disponible chez le fournisseur de numro 3 (cest--dire un produit que le fournisseur livre mais pas ncessairement cette usine)

    15) Donnez le numro du produit le plus lger (les numros si plusieurs produits ont ce mme poids)

    16) Donnez le numro des usines qui ne reoivent aucun produit rouge dun fournisseur parisien

    17) Donnez les numros des fournisseurs qui fournissent au moins un produit fourni par au moins un fournisseur qui fournit au moins un produit rouge

  • 6/10

    Exprimez en SQL (3)18) Donnez tous les triplets (VilleF, NumP, VilleU) tels quun

    fournisseur de la premire ville VilleF approvisionne une usine de la deuxime ville VilleU avec un produit NumP

    19) Mme question que prcdemment mais sans les triplets o les deux villes sont identiques

    20) Donnez les numros des produits qui sont livrs toutes les usines de Paris

    21) Donnez les numros des fournisseurs qui approvisionnent toutes les usines avec un mme produit

    22) Donnez les numros des usines qui achtent au fournisseur de numro 3 tous les produits quil fournit

    23) Donnez les numros des usines qui sapprovisionnent uniquement chez le fournisseur de numro 3

  • Exercice 2

  • 8/10

    La socit GavasoftSoit les relations suivantes de la socit Gavasoft

    Emp(NumE, NomE, Fonction, NumS, Embauche, Salaire, Comm,

    NumD)

    Dept(NumD, NomD, Lieu)

    Exemple

    NumDCommSalaireEmbaucheNumSFonctionNomE

    2

    1

    1

    NULL

    100

    NULL

    NULL

    NULL

    5000

    0

    5000

    10000

    01/10/2006

    01/10/2006

    01/10/2006

    10/10/1979

    2CommercialAl-Capone

    1StagiareToto

    1DoyenGuimezanes

    NULLPrsidentGava

    LieuNomDNumD

    BostonCommerce2

    CreilDroit1

  • 9/10

    Exprimez en SQL (4)1) Donnez la liste des employs ayant une

    commission (non NULL) class par commission dcroissante

    2) Donnez les noms des personnes embauches depuis le 01-09-2006

    3) Donnez la liste des employs travaillant Crteil

    4) Donnez la liste des subordonns de "Guimezanes"

    5) Donnez la moyenne des salaires

    6) Donnez le nombre de commissions non NULL

    7) Donnez la liste des employs gagnant plus que la moyenne des salaires de lentreprise

  • Exercice 3

  • 11/10

    Une mdiathque (1)On considre le schma relationnel suivant qui modlise une

    application sur la gestion de livres et de disques dans une mdiathque

    Les disques :

    Disque(CodeOuv, Titre, Style, Pays, Anne, Producteur)

    Cette relation regroupe un certain nombre dinformations sur un disque : le code

    douvrage CodeOuv qui est la cl de la relation, le titre, le style (Jazz, Rock

    etc.), le pays, lanne de sortie et le producteur (par exemple Barclay) ; ces

    informations sont gnrales et pour un enregistrement de la relation Disque, on

    aura aura n>1 enregistrements dans la relation E_Disque correspondant aux

    exemplaires de ce disque possds par la mdiathque

    Les exemplaires :

    E_Disque(CodeOuv, NumEx, DateAchat, Etat)

    Cette relation contient un enregistrement pour chaque exemplaire de disque

    possd par la mdiathque ; chaque exemplaire est identifi par son code

    (CodOuv) et un numro dexemplaire (NumEx) ; on trouve galement la date

    dachat et ltat du disque (intact, abm etc.)

  • 12/10

    Une mdiathque (2)Les livres :

    Livre(CodeOuv, Titre, Editeur, Collection)

    Cette relation regroupe un certain nombre dinformations sur un livre : le code de louvrage (CodeOuv) qui est la cl de la relation, le titre, le genre (par exemple polar ou SF), lditeur (par exemple Glnat) et la collection (par exemple livre de poche ) ; ces information sont gnrales et pour un enregistrement de la relation Livre, on aura n>1 enregistrement dans la relation E_Livre correspondant aux exemplaires de ce livre possds par la mdiathque

    Les exemplaires :

    E_Livre(CodeOuv, NumEx, DateAchat, Etat)

    Cette relation contient un enregistrement pour chaque exemplaire de livre possd par la mdiathque ; chaque exemplaire est identifi par son code (CodOuv) et un numro dexemplaire (NumEx) ; on trouve galement la date dachat et ltat du livre (intact, abm etc.)

  • 13/10

    Une mdiathque (3)Les auteurs :

    Auteurs(CodeOuv, Identit)

    Chaque enregistrement de cette relation correspond lun des

    auteurs dun ouvrage particulier (livre ou disque) ; lattribut

    Identit peut avoir pour valeur un nom de personne (par exemple

    Isaac Asimov) ou un nom de groupe (par exemple Noir Dsir)

    Les abonns :

    Abonne(NumAbo, Nom, Prnom, Rue, Ville, CodeP, Tlphone)

    Cette relation regroupe les informations sur les abonnes de la

    mdiathque : NumAbo qui identifie tout abonn de manire

    individuelle, le nom, le prnom de labonn, son adresse et son

    numro de tlphone

  • 14/10

    Une mdiathque (4)Les prts :

    Prt(CodeOuv, NumEx, DisqueOuLivre, NumAbo, DatePret)

    Cette relation contient un enregistrement par prt effectu ; pour chaque prt, on trouve lidentifiant du livre ou du disque (code ouvrage et numro dexemplaire), le numro de labonneffectuant le prt, un attribut explicitant si le prt est celui dun livre ou dun disque ( D pour un disque et L pour un livre) et enfin la date du prt ; cette relation ne contient des informations que pour les prts en cours cest--dire pour les emprunts non encore rendus

    Le Personnel :

    Personnel(NumEmp, Nom, Prnom, Adresse, Fonction, Salaire)

    Cette relation contient un enregistrement par employ de la mdiathque ; chaque employ est identifi par un numro et pour chaque employ, la relation donne son nom, son prnom, son adresse, sa fonction et son salaire annuel

  • 15/10

    Une mdiathque (5)Traduisez en SQL les question suivantes :

    1) Quel est le contenu de la relation Livre ?

    2) Quels sont les titres des romans dits par Gava-Editor

    ?

    3) Quelle est la liste des titres que lon retrouve la fois

    comme titre de disque et titre de livre ?

    4) Quelle est lidentit des auteurs qui ont fait des disques

    et crit des livres ?

    5) Quels sont les diffrents style de disques proposs ?

    6) Quel est le salaire annuel des membres du personnel

    gagnant plus de 20000 euros en ordonnant le rsultat

    par salaire descendant et nom croissant ?

  • 16/10

    Une mdiathque (6)Suite :

    7) Donnez le nombre de prts en cours pour chaque famille en considrant quune famille regroupe des personnes de mme nom et possdant le mme numro de tlphone ?

    8) Quel est le code du disque dont la mdiathque possde le plus grand nombre dexemplaire ?

    9) Quels sont les diteurs pour lesquels lattribut Collection na pas t renseign ?

    10) Quels sont les abonns dont le nom contient la chane ALDO et habitant en Isre ?

    11) Quel est le nombre de prts en cours ?

    12) Quels sont les salaires minimum, maximum et moyen des employs exerant une fonction de bibliothcaire ?

    13) Quel est le nombre de genres de livres diffrents ?

    14) Quel est le nombre de disque achet en 1998 ?

  • 17/10

    Une mdiathque (7)Suite :

    15) Quel est le salaire annuel des membres du personnel gagnant

    plus de 20000 euros ?

    16) Quel est le nom, prnom et ladresse des abonns ayant

    emprunt un disque le 12/01/2006 ?

    17) Quels sont les titres des livres et des disques actuellement

    emprunts par