Advertisement
Guest User

Untitled

a guest
Sep 16th, 2019
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.88 KB | None | 0 0
  1. /* 1- Donnez deux façons de spécifier une requête pour afficher les localité des client qui ont commandé le
  2. produit de numéro ‘CS464’ (avec et sans sous-requête) */
  3.  
  4. SELECT DISTINCT CLIENT.localite, PRODUIT.nPro
  5. FROM CLIENT,COMMANDE,DETAIL,PRODUIT  
  6. WHERE CLIENT.nCli = COMMANDE.nCli AND DETAIL.nPro = PRODUIT.nPro AND COMMANDE.nCom = DETAIL.nCom AND PRODUIT.nPro = "CS464";
  7.  
  8.  
  9. SELECT DISTINCT CLIENT.localite, PRODUIT.nPro
  10. FROM CLIENT,COMMANDE,DETAIL,PRODUIT  
  11. where PRODUIT.nPro IN
  12. (
  13.     SELECT nPro
  14.     FROM PRODUIT
  15.     WHERE CLIENT.nCli = COMMANDE.nCli AND DETAIL.nPro = PRODUIT.nPro AND COMMANDE.nCom = DETAIL.nCom AND PRODUIT.nPro = "CS464"
  16. );
  17.  
  18.  
  19. /*====================================================================================================================================*/
  20.  
  21. /*2- Donner deux façons pour extraire le nombre de commandes spécifiant un (ou plusieurs) produit(s) en
  22. acier. (avec et sans sous-requête)*/
  23.  
  24.  
  25. SELECT COMMANDE.nCom,PRODUIT.libelle,DETAIL.qCom
  26. FROM CLIENT, COMMANDE, DETAIL, PRODUIT
  27. WHERE CLIENT.nCli = COMMANDE.nCli AND COMMANDE.nCom = DETAIL.nCom AND PRODUIT.nPRo = DETAIL.nPro AND PRODUIT.libelle LIKE "%ACIER%";
  28.  
  29.  
  30. SELECT COMMANDE.nCom,PRODUIT.libelle,DETAIL.qCom
  31. FROM CLIENT,COMMANDE,DETAIL,PRODUIT  
  32. where PRODUIT.libelle IN
  33. (
  34.     SELECT libelle
  35.     FROM PRODUIT
  36.     WHERE CLIENT.nCli = COMMANDE.nCli AND COMMANDE.nCom = DETAIL.nCom AND PRODUIT.nPRo = DETAIL.nPro AND PRODUIT.libelle LIKE "%ACIER%"
  37. );
  38.  
  39.  
  40. /*====================================================================================================================================*/
  41.  
  42. /*3- Afficher le numéro et libellé des produits qui n’ont pas été commandés en 2015.*/
  43.  
  44. SELECT PRODUIT.nPro,libelle,COMMANDE.dateCom
  45. FROM COMMANDE,DETAIL,PRODUIT
  46. WHERE COMMANDE.nCom = DETAIL.nCom AND DETAIL.nPro = PRODUIT.nPro AND YEAR(dateCom) <> "2015";
  47.  
  48.  
  49. /*4- Afficher le numéro et le nom des clients qui n’ont jamais commandé de produit en sapin.*/
  50.  
  51.  
  52. select c.nCli, c.nom
  53. from CLIENT c
  54. where c.nCli not in
  55. (
  56.     select c.nCli
  57.     from CLIENT c, COMMANDE cmd, DETAIL d, PRODUIT p
  58.     where c.nCli = cmd.nCli AND cmd.nCom = d.nCom AND d.nPro = p.nPro AND p.libelle like '%SAPIN%'
  59. );
  60.  
  61.  
  62.  
  63.  
  64. /*5- Afficher le total et la moyenne des comptes des client, ainsi que le nombre de clients, selon :
  65. a. La catégorie
  66. b. La localité
  67. c. La catégorie dans chaque localité
  68. */
  69.  
  70. /*A*/  SELECT c.cat as "CATEGORIE",SUM(c.compte) as "SOMME",AVG(c.compte) as "MOYENNE",COUNT(c.nCli) as "NOMBRE DE CLIENTS" FROM CLIENT c GROUP BY cat;
  71. /*B*/ SELECT c.localite as "Localite",SUM(c.compte) as "SOMME",AVG(c.compte) as "MOYENNE",COUNT(c.nCli) as "NOMBRE DE CLIENTS" FROM CLIENT c GROUP BY localite;
  72. /*C*/ SELECT c.cat as "CATEGORIE",c.localite as "Localite",SUM(c.compte) as "SOMME",AVG(c.compte) as "MOYENNE",COUNT(c.nCli) as "NOMBRE DE CLIENTS" FROM CLIENT c GROUP BY localite,cat;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement