SQL ORACLE EXERCICES SOMMAIRE CHAPITRE 1 MODÈLE PHYSIQUE DE DONNÉES (MPD) DE LA

SQL ORACLE EXERCICES SOMMAIRE CHAPITRE 1 MODÈLE PHYSIQUE DE DONNÉES (MPD) DE LA BASE UTILISÉE .............. 3 CHAPITRE 2 : SQL ET SQL*PLUS .................................................................................................... 4 EXERCICES 1 À 10 : SQL ET SQL*PLUS :..............................................................................................................................4 EXERCICES 11 À 14 : SQL ET SQL*PLUS,............................................................................................................................5 CORRIGES DES EXERCICES ...................................................... 6 CHAPITRE 2 : SQL ET SQL*PLUS ................................................................................................... 7 EXERCICES 1 À 10 : SQL ET SQL*PLUS :..............................................................................................................................7 EX. 1...........................................................................................................................................................................................7 EX.2............................................................................................................................................................................................7 EX.3............................................................................................................................................................................................8 EX.4............................................................................................................................................................................................9 EX.5............................................................................................................................................................................................9 EX.6..........................................................................................................................................................................................10 EX.7..........................................................................................................................................................................................10 EX.8..........................................................................................................................................................................................11 EX.9..........................................................................................................................................................................................11 EX.10........................................................................................................................................................................................12 EXERCICES 11 À 14 : SQL ET SQL*PLUS............................................................................................................................12 EX.11........................................................................................................................................................................................12 EX.12........................................................................................................................................................................................13 EX.13........................................................................................................................................................................................13 EX.14........................................................................................................................................................................................14 EXERCICES 15 : LES VUES...................................................................................................................................................14 DEMONSTRATIONS ........................................................................................................................... 16 CHAPITRE 3 : LES TRAITEMENTS STOCKES ........................................................................... 16 2 / Chapitre 1 Modèle Physique de Données (MPD) de la base utilisée 3 / no = continent_no no = superieur_no no = texte_no no = image_no no = emp_no no = client_no no = produit_no no = commande_no no = entrepot_no no = produit_no titre = titre no = service_no no = superieur_no no = continent_no no = continent_no no = emp_no e_image no <pk> NUMBER(7) not null format VARCHAR2(25) null validite VARCHAR2(1) null nom_fichier VARCHAR2(255) null image LONG RAW null e_produit no <pk> NUMBER(7) not null nom <ak> VARCHAR2(50) not null description VARCHAR2(255) null texte_no <fk> NUMBER(7) null image_no <fk> NUMBER(7) null prix_conseille NUMBER(11,2) null e_texte no <pk> NUMBER(7) not null validite VARCHAR2(1) null nom_fichier VARCHAR2(255) null texte VARCHAR2(2000) null e_continent no <pk> NUMBER(7) not null nom <ak> VARCHAR2(50) not null e_client no <pk> NUMBER(7) not null nom VARCHAR2(50) not null telephone VARCHAR2(25) null adresse VARCHAR2(400) null ville VARCHAR2(30) null departement VARCHAR2(20) null pays VARCHAR2(30) null cp_postal VARCHAR2(5) null solvabilite VARCHAR2(9) null emp_no <fk> NUMBER(7) null continent_no <fk> NUMBER(7) null commentaires VARCHAR2(255) null e_commande no <pk> NUMBER(7) not null client_no <fk> NUMBER(7) not null dt_commande DATE null dt_livraison DATE null emp_no <fk> NUMBER(7) null total NUMBER(11,2) null nt_paiement VARCHAR2(8) null validite VARCHAR2(1) null e_ligne commande_no <pk,fk,ak> NUMBER(7) not null ligne_no <pk> NUMBER(7) not null produit_no <fk,ak> NUMBER(7) not null prix NUMBER(11,2) null quantite NUMBER(9) null qte_livree NUMBER(9) null e_service no <pk> NUMBER(7) not null nom <ak> VARCHAR2(25) not null continent_no <fk,ak> NUMBER(7) null e_entrepot no <pk> NUMBER(7) not null continent_no <fk> NUMBER(7) not null adresse LONG null ville VARCHAR2(30) null departement VARCHAR2(20) null pays VARCHAR2(30) null cp_postal VARCHAR2(5) null telephone VARCHAR2(25) null superieur_no <fk> NUMBER(7) null e_stock produit_no <pk,fk> NUMBER(7) not null entrepot_no <pk,fk> NUMBER(7) not null qte_stockee NUMBER(9) null stock_securite NUMBER(9) null max_stocke NUMBER(9) null detail_sortie VARCHAR2(255) null dt_stock DATE null e_titre titre <pk> VARCHAR2(25) not null e_emp no <pk> NUMBER(7) not null nom VARCHAR2(25) not null prenom VARCHAR2(25) null utilisateur <ak> VARCHAR2(8) null dt_entree DATE null commentaires VARCHAR2(255) null superieur_no <fk> NUMBER(7) null titre <fk> VARCHAR2(25) null service_no <fk> NUMBER(7) null salaire NUMBER(11,2) null pct_commission NUMBER(4,2) null Modèle Physique de Données Projet : Formation Modèle : Exos Auteur : Or@Tech Version 1.0 10.11.99 Chapitre 2 : SQL et SQL*Plus EXERCICES 1 À 10 : SQL ET SQL*PLUS : Préparation : charger la base DELUXE.SQL Enregistrez la requête que vous construirez Enregistrez également les résultats dans un fichier spool Exercice 1 Liste des services dont le numéro est supérieur à 45. Exercice 2 Liste des employés dont le nom commence par "M" Récrire la requête en utilisant une variable. Exercice 3 Liste des employés n’ayant pas de commission. Exercice 4 Liste des employés qui ont les fonctions suivantes : Magasinier, Chef d’entrepôt. Exercice 5 Liste des employés gagnant entre 1400 et 2000 et ayant intégré la société après le 20 janvier 1992. Exercice 6 Liste des employés dont la commission est supérieure à 200, classés dans l’ordre croissant des commissions. Exercice 7 Liste des employés triés par titre et pour chaque titre triés par salaire décroissant. Exercice 8 Liste des employés et des services dans lesquels ils exercent. Exercice 9 Liste des numéros de produits qui n’ont jamais été commandés. Exercice 10 Liste des employés travaillant en Europe et ayant le même titre que SMITH. 4 / EXERCICES 11 À 14 : SQL ET SQL*PLUS, Exercice 11 Liste des employés (no, nom, salaire) triés par nom. Le salaire de VELASQUEZ doit être caché par des "*". Exercice 12 Liste des employés (nom, prénom, date d’entrée, salaire et numéro de service) travaillant dans un service qui contient au moins un Représentant Commercial. Exercice 13 Liste des employés dont le prénom comprend au moins un A ou un i et dont l’ensemble (nom, prénom) comporte au plus 6 voyelles. Exercice 14 Afficher les informations du service ayant le plus d’employés : son numéro, son nom, le nom du continent où il se trouve et le nombre d’employés y travaillant. Exercice 15 : Les vues Créer une vue V_EMP qui rassemblera : Le numéro, le nom, le titre, le salaire et le nom du service de l’employé Regarder le contenu de la vue EMP_T Supprimer la table E_EMP (avec l’option CASCADE CONSTRAINTS) Afficher le contenu de la vue V_EMP Que se passe-t-il ? 5 / CORRIGES DES EXERCICES 6 / Chapitre 1 : SQL et SQL*Plus EXERCICES 1 À 10 : SQL ET SQL*PLUS : Ex. 1. SELECT nom, no FROM e_service WHERE no > 45 / NOM NO ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­ Administration 50 1 ligne(s) retournée(s) Ex.2. Première requête SELECT nom FROM e_emp WHERE nom LIKE 'M%' / NOM ­­­­­­­­­­­­­­­­­­­­­­­­­ MENCHU MAGEE MADURO MARKARIAN 4 ligne(s) retournée(s) 7 / 2 ème requête SQL> spool var SQL> get var2.sql 1 SELECT nom 2 FROM e_emp 3* WHERE nom LIKE '&1%' SQL> r 1 SELECT nom 2 FROM e_emp 3* WHERE nom LIKE '&1%' Entrez une valeur pour 1 : M ancien 3 : WHERE nom LIKE '&1%' nouveau 3 : WHERE nom LIKE 'M%' NOM ------------------------- MENCHU MAGEE MADURO MARKARIAN 4 ligne(s) sélectionnée(s). Ex.3. SELECT nom, salaire, pct_commission FROM e_emp WHERE pct_commission IS NULL / NOM SALAIRE PCT_COMMISSION ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­ VELASQUEZ 2500.00 NGAO 1450.00 NAGAYAMA 1400.00 QUICK­TO­SEE 1450.00 ROPBURN 1550.00 URGUHART 1200.00 MENCHU 1250.00 BIRI 1100.00 CATCHPOLE 1300.00 HAVEL 1307.00 MADURO 1400.00 SMITH 940.00 NOZAKI 1200.00 PATEL 795.00 NEWMAN 750.00 MARKARIAN 850.00 CHANG 800.00 PATEL 795.00 DANCS 860.00 SCHWARTZ 1100.00 20 ligne(s) retournée(s) 8 / Ex.4. SELECT nom , titre FROM e_emp WHERE titre IN ('Magasinier', 'Chef d''entrepôt') / NOM TITRE ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­­­­­­­­­­­ URGUHART Chef d'entrepôt MENCHU Chef d'entrepôt BIRI Chef d'entrepôt CATCHPOLE Chef d'entrepôt HAVEL Chef d'entrepôt MADURO Magasinier SMITH Magasinier NOZAKI Magasinier PATEL Magasinier NEWMAN Magasinier MARKARIAN Magasinier CHANG Magasinier PATEL Magasinier DANCS Magasinier SCHWARTZ Magasinier 15 ligne(s) retournée(s) Ex.5. SELECT nom, salaire, dt_entree FROM e_emp WHERE salaire BETWEEN 1400 AND 2000 AND dt_entree > '20­JAN­92' / NOM SALAIRE DT_ENTREE ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­ ­­­­­­­­­­­ NGUYEN 1525.00 22­JAN­92 MADURO 1400.00 07­FEB­92 2 ligne(s) retournée(s) 9 / Ex.6. SELECT nom, salaire, pct_commission, pct_commission * salaire/100 "COMMISSION" FROM e_emp WHERE (pct_commission * salaire/100) >200 ORDER BY commission / NOM SALAIRE PCT_COMMISSION COMMISSION ------- --------------- --------------- --------------- NGUYEN 1525.00 15.00 228 DUMAS 1450.00 17.50 253 2 ligne(s) retournée(s) Ex.7. SELECT nom, titre, salaire FROM e_emp ORDER BY titre, salaire DESC / NOM TITRE SALAIRE -------------- ------------------------- ------- HAVEL Chef d'entrepôt 1307.00 CATCHPOLE Chef d'entrepôt 1300.00 MENCHU Chef d'entrepôt 1250.00 URGUHART Chef d'entrepôt 1200.00 BIRI Chef d'entrepôt 1100.00 ROPBURN DR, Administration 1550.00 QUICK-TO-SEE DR, Finance 1450.00 NGAO DR, Opérations 1450.00 NAGAYAMA DR, Ventes 1400.00 MADURO Magasinier 1400.00 NOZAKI Magasinier 1200.00 SCHWARTZ Magasinier 1100.00 SMITH Magasinier 940.00 DANCS Magasinier 860.00 MARKARIAN Magasinier 850.00 CHANG Magasinier 800.00 PATEL Magasinier 795.00 PATEL Magasinier 795.00 NEWMAN Magasinier 750.00 VELASQUEZ Président 2500.00 NGUYEN Représentant Commercial 1525.00 SEDEGHI Représentant Commercial 1515.00 GILJUM Représentant Commercial 1490.00 DUMAS Représentant Commercial 1450.00 MAGEE Représentant Commercial 1400.00 10 / Ex.8. SELECT e_emp.nom ‘‘EMPLOYE’’, e_service.nom ‘‘SERVICE’’ FROM e_emp, e_service WHERE e_emp.service_no = e_service.no / EMPLOYE SERVICE ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­­­­­­­­­­­ VELASQUEZ Administration NGAO Opérations NAGAYAMA Ventes QUICK­TO­SEE Finance ROPBURN Administration URGUHART Opérations MENCHU Opérations BIRI Opérations CATCHPOLE Opérations HAVEL Opérations MAGEE Ventes GILJUM Ventes SEDEGHI Ventes NGUYEN Ventes DUMAS Ventes MADURO Opérations SMITH Opérations NOZAKI Opérations PATEL Opérations NEWMAN Opérations MARKARIAN Opérations CHANG Opérations PATEL Ventes DANCS Opérations SCHWARTZ Opérations 25 ligne(s) retournée(s) Ex.9. SELECT no FROM e_produit MINUS SELECT produit_no FROM e_ligne / NO ­­­­­­­­­­­­­­­ 41020 41050 2 ligne(s) retournée(s) 11 / Ex.10. SELECT e.nom, e.titre FROM e_emp e, e_service s WHERE e.service_no = s.no AND s.continent_no = (SELECT no FROM e_continent WHERE nom = 'Europe') AND titre = (SELECT titre FROM e_emp WHERE nom = 'SMITH') / NOM TITRE ­­­­­­­­­­­­­­­­­­­­­­­­­ ­­­­­­­­­­­­­­­­­­­­­­­­­ DANCS Magasinier SCHWARTZ Magasinier 2 ligne(s) retournée(s) EXERCICES 11 À 14 : SQL ET SQL*PLUS Ex.11. SQL> SELECT no, nom, 2> DECODE(nom, 'VELASQUEZ', '****', salaire) SALAIRE 3> FROM e_emp 4> ORDER BY nom / NO NOM SALAIRE --------- --------------- ------------------------------ 8 BIRI 1100 9 CATCHPOLE 1300 22 CHANG 800 24 DANCS 860 15 DUMAS 1450 12 GILJUM 1490 10 HAVEL 1307 16 MADURO 1400 11 MAGEE 1400 21 MARKARIAN 850 7 MENCHU 1250 3 NAGAYAMA 1400 20 NEWMAN 750 2 NGAO 1450 14 NGUYEN 1525 18 NOZAKI 1200 19 PATEL 795 23 PATEL 795 4 QUICK-TO-SEE 1450 5 ROPBURN 1550 25 SCHWARTZ 1100 13 SEDEGHI 1515 17 SMITH 940 6 URGUHART 1200 1 VELASQUEZ **** 25 ligne(s) retournée(s) 12 / Ex.12. uploads/Geographie/ exercices-oracle-sql-et-sql-plus.pdf

  • 26
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager