Exercice Langage SQL : Les livraisons (Partie 1)

Enoncé de l'exercice: (Les livraison)

Soit la base relationnelle de données PUF de schéma :

                                     U (NumU, NomU, VilleU)

                                     P (NumP, NomP, Couleur, Poids)

                                     F (NumF, NomF, Statut, VilleF)

                                     PUF (NumP, NumU, NumF, Quantité)

Décrivant le fait que (avec des DF évidentes) :

     U : une usine est d’écrite par son numéro NumU, son nom NomU et la ville VilleU où elle est située

     P : un produit est décrit par son numéro NumP, son nom NomP, sa couleur et son poids

     F : un fournisseur est décrit par son numéro NumP, son nom NomF, son statut (sous-traitant, client…) et la ville VilleF où il est domicilié

     PUF : le produit de numéro NumP a été délivré à l’usine de numéro NumU par le fournisseur de numéro NumF dans une quantité donnée.

Exprimer en SQL les requêtes suivantes :

  1. Ajouter un nouveau fournisseur avec les attributs de votre choix
  2. Supprimer tous les produits de couleur noire et de numéros compris entre 100 et 1999
  3. Changer la ville du fournisseur 3 par Toulouse
  4. Donnez le numéro, le nom, la ville de toutes les usines
  5. Donnez le numéro, le nom, la ville de toutes les usines de Paris
  6. Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en produit de numéro 100
  7. Donnez les noms et les couleurs des produits livrés par le fournisseur de numéro 2
  8. Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en un produit rouge
12345678910111213141516171819202122232425262728293031323334353637383940411) Ajouter un nouveau fournisseur avec les attributs de votre choixINSERT INTO F VALUES (45, ‘Alfred’, ’Sous-traitant’,‘Chalon’) 2) Supprimer tous les produits de couleur noire et de numéros compris entre 100 et 1999  DELETE P WHERE Np>=100 AND Np199 ANDCouleur=‘Noire’ 3) Changer la ville du fournisseur 3 par Toulouse  UPDATE F SET Ville=‘Nice’ WHERE Nf=1 4) Donnez le numéro, le nom, la ville de toutes les usines  SELECT * FROM U 5) Donnez le numéro, le nom, la ville de toutes les usines de Paris  SELECT * FROM U WHERE Ville="Créteil" 6) Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en produit de numéro 100  SELECT Nf FROM PUF WHERE Nu=1 AND Np=1 7) Donnez les noms et les couleurs des produits livrés par le fournisseur de numéro 2 SELECT DISTINCT NomP, Couleur FROM P, PUFWHERE PUF.Np=P.Np AND Nf=1 Ou bien SELECT NomP, Couleur FROM P WHERE Np IN (SELECT Np FROM PUF WHERE NF=1) 8) Donnez les numéros des fournisseurs qui approvisionnent l"’"usine de numéro 2 en un produit rouge SELECT DISTINCT Nf FROM PUF, P WHERE Couleur="Rouge" AND PUF.Np=P.Np AND Nu=1 Ou bien SELECT DISTINCT Nf FROM PUF WHERE Np IN (SELECT Np FROM P WHERE Couleur="Rouge") AND Nu=1
Article publié le 12 Décembre 2011 par GC Team