Pour pouvoir tester vos compétences en sql , et plus précisément , en recherche des données via l’ordre SELECT; voilà un TP  (TP sur l’ordre SELECT) qui présente un cas réel de gestion des données. Un TP avec 20 questions pour vous aidez à voir les différents scénarios possibles. 

Vous devez suivez les questions et proposez votre solution dans la partie des commentaires. Ainsi, vous serez amené à comprendre vos erreurs et donc ne les refaire jamais par la suite.

 

TP sur l'ordre SELECT : Enoncé

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

Usine(NumU, NomU, VilleU)

Produit(NumP, NomP, Couleur, Poids)

Fournisseur(NumF, NomF, Statut, VilleF)

PUF(#NumP, #NumU, #NumF, Quantité)

PUF décrit le fait qu’un produit de numéro NumP a été livré à l’usine de numéro NumU par le fournisseur de numéro NumF avec  une Quantité donnée.

Partie 1 :

  1.           Donnez le numéro, le nom et la ville de toutes les usines
  2.           Afficher le numéro, le nom, la ville de toutes les usines de Casa
  3.          Lister les numéros des fournisseurs qui approvisionnent (fournissent) l’usine de numéro 5 en produit de numéro 100
  4.           Sélectionner les noms et les couleurs des produits livrés par le fournisseur de numéro 2
  5.          Afficher les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en un produit rouge
  6.       Donnez les noms des fournisseurs qui approvisionnent une usine de casa ou de rabat en produit rouge
  7.          Lister les numéros des produits livrés à une usine par un fournisseur de la même ville
  8.          Donnez les numéros des produits livrés à une usine de Casa par un fournisseur de Casa.
  9.          Sélectionner les numéros des usines qui ont au moins un fournisseur qui n’est pas de la même ville

 

Partie 2 :

  1.  Afficher les numéros des fournisseurs qui approvisionnent à la fois des usines de numéros 2 et 3
  2.   Donnez les numéros des usines qui utilisent au moins un produit disponible chez le fournisseur de numéro 3 (c’est-à-dire un produit que le fournisseur livre mais pas nécessairement à cette usine)
  3.  Rechercher le numéro du produit le plus léger (les numéros si plusieurs produits ont ce même poids)
  4.  Lister le numéro des usines qui ne reçoivent aucun produit rouge d’un fournisseur de casa
  5.  Afficher les numéros des fournisseurs qui fournissent au moins un produit fourni par au moins un fournisseur qui fournit au moins un produit rouge

             Partie 3 :

  1.  Donnez tous les triplets (VilleF, NumP, VilleU) tels qu’un fournisseur de la première ville VilleF approvisionne une usine de la deuxième
    ville VilleU avec un produit NumP
  2.  Même question que précédemment mais sans les triplets où les deux villes sont identiques
  3.  Sélectionner les numéros des produits qui sont livrés à toutes les usines de Paris
  4.  Afficher les numéros des fournisseurs qui approvisionnent toutes les usines avec un même produit
  5.  Donnez les numéros des usines qui achètent au fournisseur de numéro 3 tous les produits qu’il fournit
  6.   Lister les numéros des usines qui s’approvisionnent uniquement chez le fournisseur de numéro 3

Si vous voulez un deuxième TP sur l’ordre select, le voilà : TP2 sur select (avec solution).

Vous pouvez suivre notre cours complet d’SQL . Il vous aide à approfondir vos compétences sur la création d’une base de données relationnelle et la manipulation des données avec les ordres sql : select, update, delete, insert

Aussi, vous avez une playlist des vidéos (Explication en Darija arabe marocaine)  bien organisée qui traite : Les bases de données (partie SQL)

2 Commentaires

  1. NAMBININTSOA Tahinjanahary dit :

    Partie 1:
    1/ SELECT * FROM Usine;
    2/ Je ne comprends pas la question. Casa c’est quoi?

    3/ SELECT numF FROM PUF WHERE numU = 5 AND numP = 100;
    4/ SELECT nomP, couleur FROM Produit JOIN PUF ON PUF.numP = Produit.numP WHERE PUF.numF = 2;
    5/ SELECT numF FROM Produit JOIN PUF ON PUF.numP = Produit.numP WHERE couleur = ‘rouge’;
    6/ SELECT nomP FROM Fournisseur JOIN PUF ON PUF.numF = Fournisseur.numF JOIN Produit ON PUF.numP = Produit.numP
    WHERE (nomP = ‘casa’ OR nomP = ‘rabat’) AND couleur = ‘rouge’;
    7/ SELECT numP FROM Usine JOIN Fournisseur ON VileU = VilleF JOIN PUF ON PUF.numF = Fournisseur.numF;
    8/Je ne comprends pas la question. Casa c’est quoi?
    9/ SELECT numU FROM Usine JOIN Fournisseur ON VileU != VilleF

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *