Avez-vous une question? (216) 97 656 803 hajjriadh@gmail.com
MySQL

Correction exercices les bases de données MySQL Série 01

Un cours complet pour maîtriser Correction exercices les bases de données MySQL Série 01.

0 chapitres 0 QCM Accès gratuit
  1. Exercice 01

    1. Énoncé
    2. Correction
      Continent (numContinent, nomContinent)
      Fleuve (numFleuve, nomFleuve)
      Frontalier (numPays1#, numPays2#)
      Pays ( numPays, nomPays, capitale, population, superficieKm², dateAdhesionONU, numContinent#)
      Traversee (numPays#, numFleuve#)
      1/
      SELECT nomFleuve
      FROM fleuve;
      2/
      SELECT nomPays, capitale
      FROM pays
      WHERE capitale LIKE 'B%';
      3/
      SELECT nomPays, superficieKm²
      FROM pays
      WHERE superficieKm² >= 200000;
      4/
      SELECT COUNT(*)
      FROM pays;
      5/
      SELECT nomPays, superficieKm²
      FROM pays
      WHERE superficieKm² = (SELECT MAX(superficieKm²) FROM pays);
      6/
      SELECT nomPays, capitale
      FROM pays 
         INNER JOIN continent ON pays.numContinent = continent.NumContinent 
      WHERE nomContinent = 'Afrique'
      ORDER BY nomPays;
      7/
      SELECT nomPays, capitale
      FROM pays  
          INNER JOIN continent ON pays.numContinent = continent.NumContinent 
      WHERE nomContinent = 'Afrique'
      ORDER BY superficieKm² DESC;
      8 /
      SELECT SUM(superficieKm²)
      FROM pays 
      INNER JOIN continent ON pays.numContinent = continent.numContinent 
      WHERE nomContinent ='Afrique';
      9/
      SELECT nomContinent, SUM(superficieKm²)
      FROM pays 
      INNER JOIN continent ON pays.numContinent = continent.numContinent 
      GROUP BY nomContinent;
      10/
      SELECT AVG(superficieKm²)
      FROM pays;
      11/
      SELECT nomPays, COUNT(numFleuve)
      FROM traversee 
      INNER JOIN pays ON traversee.numPays = pays.numPays 
      GROUP BY nomPays;
      12/
      SELECT nomPays
      FROM pays 
      INNER JOIN continent ON pays.numContinent = continent.numContinent 
      WHERE superficieKm² <=  100000 
      AND nomContinent = 'Amérique' 
      ORDER BY superficieKm² ASC;
      13/
      SELECT nomPays, capitale
      FROM pays, traversee
      WHERE pays.numPays = traversee.numPays
      GROUP BY nomPays, capitale
      HAVING COUNT(*) > 2;
      14/
      SELECT p1.nomPays, p2.nompays
      FROM pays p1, pays p2, frontalier
      WHERE p1.numPays = numPays1 
      AND numPays2 = p2.numPays 
      ORDER BY p1.nomPays, p2.nomPays 
    3. Exercice 02

      1. Énoncé
      2. Correction
          1/
            Voiture(numserie, couleur, prix, cout, marque, modele) Arrivee(numserie,dateArr,magasin) Client(numCli,nom,prenom,adresse) Vendeur(numVen,nom,prenom,adresse,salairefixe,magasin) Vente(numero,dateVente,prixachat,numserie,#numVen,#numCli)
          2.1/
          SELECT Voiture.numserie
          FROM Voiture, Vente
          WHERE Voiture.numserie = Vente.numserie
          AND date > '2007-04-15'
          2.2/
          SELECT Voiture.numserie
          FROM Voiture,Vente
          WHERE Voiture.numserie = Vente.numserie
          AND prixachat-cout >= ALL (SELECT prixachat-cout
          FROM Voiture,Vente
          WHERE Voiture.numserie = Vente.numserie)
          2.3/
          SELECT nomv, prenomv
          FROM Vente,Voiture
          WHERE Voiture.numserie = Vente.numserie
          AND prix-prixachat >= ALL (SELECT prix-prixachat
          FROM Voiture,Vente
          WHERE Voiture.numserie = Vente.numserie)
          2.4/
          SELECT magasin, SUM(benef) as benefice
          FROM (SELECT nom,prenom,magasin,
          SUM(prixachat-cout-0.5*(prix-cout))-salaire as benef
          FROM Voiture,Vente,Vendeur
          WHERE Voiture.numserie = Vente.numserie
          AND nomv = nom
          AND prenomv = prenom
          AND date BETWEEN ’2007-01-01’ AND ’2007-01-31’
          GROUP BY nom,prenom,magasin) BeneficesVendeurs
          GROUP BY magasin
          2.5/
          SELECT nomc,prenomc
          FROM Vente,Voiture
          WHERE Voiture.numserie = Vente.numserie
          GROUP BY nomc,prenomc
          HAVING SUM(prixachat-cout-0.5*(prix-cout)) >= ALL
          (SELECT SUM(prixachat-cout-0.5*(prix-cout))
          FROM Vente,Voiture
          WHERE Voiture.numserie = Vente.numserie
          GROUP BY nomc,prenomc)