Exercice - PowerPoint PPT Presentation

About This Presentation
Title:

Exercice

Description:

Retrouvez les nom et pr nom de tous les employ s ayant un pr nom compos . ... Retrouvez les nom et pr nom des employ s ayant un deuxi me pr nom. ... – PowerPoint PPT presentation

Number of Views:94
Avg rating:3.0/5.0
Slides: 33
Provided by: stephane77
Category:
Tags: exercice | prenom

less

Transcript and Presenter's Notes

Title: Exercice


1
Exercice 1
  • Retrouvez le numéro, le nom et le lieu de chaque
    projet ainsi que le numéro du département qui les
    contrôle.
  • ?NUMÉRO, NOM, LIEU, DNUM( PROJET )
  • SELECT FROM PROJET

2
Exercice 2
  • Retrouvez le nom des départements qui sont
    contrôlés par Pierre St-Jean .
  • ?DÉPARTEMENT.NOM, ( DEPARTEMENT XNAS_DIR NAS
    ? EMPLOYE.NOM ST-JEAN ? EMPLOYE.PRÉNOM
    PIERRE EMPLOYE )

3
Exercice 2
  • Retrouvez le nom des départements qui sont
    contrôlés par Pierre St-Jean .
  • SELECT NOM FROM DEPARTEMENT
    WHERE NAS_DIR IS ( SELECT NAS FROM EMPLOY
    É WHERE NOM LIKE ST-JEAN AND PRÉNOM LIKE
    PIERRE )

4
Exercice 3
  • Retrouvez les nom et prénom de tous les employés
    ayant un prénom composé. (Le trait dunion
    sépare les prénoms composés )
  • ? NOM, PRÉNOM (? PRÉNOM LIKE - (EMPLOYE) )
  • SELECT NOM, PRÉNOM FROM EMPLOYÉ WHERE PRÉ
    NOM LIKE -

5
Exercice 4
  • Retrouvez les nom et prénom des employés ayant un
    deuxième prénom. (Ex. John B Smith )
  • ? NOM, PRÉNOM (? NOM_MI ? (EMPLOYE) )
  • SELECT NOM, PRÉNOM FROM EMPLOYÉ WHERE NOM
    _MI IS NOT NULL

6
Exercice 5
  • Déterminez ce que serait le salaire de chaque
    employé du département CONCEPTION si celui-ci
    était doublé. Retrouvez les nom, prénom et le
    nouveau salaire.
  • ? EMPLOYE.NOM, PRÉNOM, SALAIRE2 (EMPLOYE XDNO
    NUMÉRO ? DEPARTEMENT.NOM CONCEPTION
    DEPARTEMENT)
  • SELECT E.NOM, PRÉNOM, SALAIRE2 FROM EMPLOYÉ
    E, DEPARTEMENT D WHERE DNO NUMÉRO AND D.NOM
    CONCEPTION

7
Exercice 6
  • Retrouvez le nom de tous les dépendants qui sont
    nés le même jour que lemployé de qui ils
    dépendent.
  • ? DÉPENDANT.NOM ( EMPLOYE XNAS ENAS ?
    DÉPENDANT.DATE_N EMPLOYE.DATE_N
    DÉPENDANT )
  • SELECT D.NOM FROM EMPLOYÉ E, DÉPENDANT
    D WHERE NAS ENAS AND E.DATE_N D.DATE_N

8
Exercice 7
  • Retrouvez les nom et prénom de toutes les femmes
    qui travaillent sur le projet numéro 7. ( F
    Féminin )
  • ? EMPLOYE.NOM, PRÉNOM( EMPLOYE XNAS ENAS ?
    SEXE F ? PNUM 7 TRAVAILLE_SUR )
  • SELECT NOM, PRÉNOM FROM EMPLOYÉ,
    TRAVAILLE_SUR WHERE NAS ENAS AND SEXE F
    AND PNUM 7

9
Exercice 8
  • Pour tous les départements ayant plus de 5
    femmes, retrouvez le nom de ces départements
    ainsi que le nombre de femmes qui y travaillent.
  • NB_F_DEPT ? DNAME ?COUNT NAS( EMPLOYE XDNO
    NUMÉRO ? SEXE F DEPARTEMENT )
  • ? COUNT_NAS gt 5 (NB_F_DEPT)
  • SELECT D.NOM, COUNT() FROM EMPLOYÉ,
    DEPARTEMENT D WHERE DNO NUMÉRO AND SEXE
    F GROUP BY D.NOM HAVING COUNT() gt 5

10
Exercice 9
  • Pour chaque employé travaillant sur plus de deux
    projets, retrouvez le NAS, le nom, le prénom et
    le nombre total dheures travaillées de ceux qui
    ont travaillé moins de 50 heures.
  • EMP_PROJS?ENAS ?COUNT ENAS, SUM
    HEURES(TRAVAILLE_SUR)
  • ? NAS, NOM, PRÉNOM, SUM_HEURES( EMPLOYE
    XCOUNT_ENAS gt 2 ? SUM_HEURES lt 50 ? ENAS
    NAS EMP_PROJS )

11
Exercice 9
  • Pour chaque employé travaillant sur plus de deux
    projets, retrouvez le NAS, le nom, le prénom et
    le nombre total dheures travaillées de ceux qui
    ont travaillé moins de 50 heures.
  • SELECT NAS, NOM, PRÉNOM, SUM( HEURES
    ) FROM EMPLOYÉ , TRAVAILLE_SUR WHERE NAS ENAS
    GROUP BY NAS, NOM, PRÉNOM HAVING SUM(
    HEURES ) lt 50 AND COUNT() gt 2

12
Exercice 10
  • Retrouvez le numéro des départements qui ont plus
    de 5 employés.
  • NB_EMP_DEPT(DNO, NB_EMP) ? DNO ?COUNT NAS(
    DEPARTEMENT XDNO NUMÉRO EMPLOYE )
  • ? DNO (? NB_EMP gt 5 NB_EMP_DEPT )

13
Exercice 10
  • Retrouvez le numéro des départements qui ont plus
    de 5 employés.
  • a) Sans utiliser linstruction HAVING
  • SELECT NUMÉRO FROM DEPARTEMENT WHERE (
    SELECT COUNT() FROM EMPLOYÉ
    WHERE DNO NUMÉRO ) gt 5
  • b) En utilisant linstruction HAVING
  • SELECT NUMÉRO FROM DEPARTEMENT,
    EMPLOYÉ WHERE NUMÉRO DNO GROUP
    BY NUMÉRO HAVING COUNT() gt 5

14
Exercice 11
  • Listez les noms des employés qui ont au moins un
    dépendant du même sexe qu'eux.
  • ? EMPLOYE.NOM ( EMPLOYE XNAS ENAS ?
    DÉPENDANT.SEXE EMPLOYE.SEXEDÉPENDANT )
  • SELECT NOM, PRÉNOM FROM EMPLOYÉ
    E WHERE EXIST ( SELECT FROM
    DEPENDANT WHERE NAS ENAS AND SEXE
    E.SEXE )

15
Exercice 12
  • Trouvez les noms des employés qui ne sont pas
    directement supervisés par "Albert Einstein".
  • NAS_AE?? NAS(? NOM EINSTEIN? PRÉNOM
    ALBERTEMPLOYE)
  • EMP_NAS_AE ? ? NOM, NAS_AE (NAS_AE X EMPLOYE )
  • EMP_NAS_SUP ? ? NOM, NAS_SUP ( EMPLOYE )
  • ? NOM ( EMP_NAS_SUP - EMP_NAS_AE )

16
Exercice 12
  • Trouvez les noms des employés qui ne sont pas
    directement supervisés par "Albert Einstein".
  • SELECT NOM,PRÉNOM FROM EMPLOYÉ
    WHERE NAS_SUP IS NOT ( SELECT
    NAS FROM EMPLOYE WHERE NOM LIKE
    EINSTEIN AND PRÉNOM LIKE
    ALBERT )

17
Exercice 13
  • Retrouvez les noms des employés qui travaillent
    sur aucun projet.
  • TRAV_ENAS ? ? ENAS, NOM ( TRAVAILLE_SUR
    XNASENAS EMPLOYE )
  • EMP_NAS_NOM ? ? NAS, NOM( EMPLOYE )
  • ? NOM ( EMP_NAS_NOM TRAV_NAS )

18
Exercice 13
  • Retrouvez les noms des employés qui travaillent
    sur aucun projet.
  • SELECT NOM,PRÉNOM FROM EMPLOYÉ WHERE NOT
    EXIST ( SELECT FROM
    TRAVAILLE_SUR WHERE NAS ENAS )

19
Exercice 14
  • Pour chaque employé, retrouvez les nom et prénom
    des employés ainsi que leur nombre de dépendants.
  • NB_F_DEPT ? NOM, PRÉNOM ?COUNT NAS( EMPLOYE
    XENAS NAS DÉPENDANT )
  • SELECT E.NOM, PRÉNOM, COUNT() FROM EMPLOYÉ E,
    DÉPENDANT WHERE NAS ENAS GROUP BY E.NOM,
    PRÉNOM

20
Exercice 15
  • Recherchez les noms des employés du département
     Recherche  qui ont travaillé moins de 10
    heures sur le projet numéro 5.
  • EMP_D_RECH ? ? NAS, EMPLOYE.NOM (
  • EMPLOYE XNUMÉRO NAS ? DEPARTEMENT.NOM
    RECHERCHE DEPARTEMENT )
  • ? NOM( EMP_D_RECH XNAS ENAS ? HEURES lt 10 ?
    PNUM 5 TRAVAILLE_SUR )

21
Exercice 15
  • Recherchez les noms des employés du département
     Recherche  qui ont travaillé moins de 10
    heures sur le projet numéro 5.
  • SELECT E.NOM, PRÉNOM FROM EMPLOYÉ E,
    DEPARTEMENT D, TRAVAILLE_SUR WHERE DNO
    NUMÉRO AND NAS ENAS AND D.NOM
    Recherche AND PNUM 5 AND HEURES lt 10

22
Exercice 16
  • Listez les noms des employés qui travaillent sur
    au moins un projet ayant pour lieu  Houston .
  • P_HOUSTON ? ? ENAS, PNUM ( PROJET XNUMÉRO
    PNUM ? NOM Houston TRAVAILLE_SUR )
  • ? NOM, PRÉNOM ( P_HOUSTON XNAS ENASEMPLOYE )

23
Exercice 16
  • Listez les noms des employés qui travaillent sur
    au moins un projet ayant pour lieu  Houston .
  • SELECT E.NOM, PRÉNOM FROM EMPLOYÉ E
    WHERE EXIST ( SELECT FROM PROJET P,
    TRAVAILLE_SUR WHERE ENAS
    NAS AND PNUM NUMÉRO AND LIEU LIKE
    Houston )

24
Exercice 17
  • Listez le nom de chaque projet avec le nom du
    département qui le contrôle ainsi que le nombre
    demployés qui travaille dessus.
  • P_NB_EMPL( NUMÉRO, NOM, DNUM, NB_EMPL) ? NUMÉRO,
    NOM, DNUM ?COUNT ENAS( PROJET XNUMÉRO PNUM
    TRAVAILLE_SUR )
  • ? P_NB_EMPL.NOM, DEPARTEMENT.NOM, NB_EMPL(
    P_NB_EMPL X DNUM DEPARTEMENT.NUMÉRO
    DEPARTEMENT )

25
Exercice 17
  • Listez le nom de chaque projet avec le nom du
    département qui le contrôle ainsi que le nombre
    demployés qui travaille dessus.
  • SELECT P.NOM, D.NOM, COUNT() FROM PROJET P,
    DEPARTEMENT D, TRAVAILLE_SUR WHERE DNUM
    D.NUMÉRO AND PNUM P.NUMÉRO GROUP
    BY P.NOM, D.NOM

26
Exercice 18
  • Retrouvez le nom et le lieu de chaque département
    ainsi que le nombre de projet quil contrôle.
  • DEPT_NB_PROJ(DNUM, DNOM, NB_PROJ) ?
    DEPARTEMENT.NUMÉRO, DEPARTEMENT. NOM ? COUNT
    PROJET.NUMÉRO ( DEPARTEMENT X
    DEPARTEMENT.NUMÉRO DNUM PROJET)
  • ? DNOM, DLIEU, NB_PROJ( DEPT_NB_PROJ
    XDNUMDNUMÉRO LIEU_DEPT )

27
Exercice 18
  • Retrouvez le nom et le lieu de chaque département
    ainsi que le nombre de projet quil contrôle.
  • SELECT D.NOM, DLIEU, COUNT() FROM PROJET P,
    DEPARTEMENT D, LIEU_DEPT WHERE DNUM
    D.NUMÉRO AND DNUMÉRO D.NUMÉRO GROUP
    BY D.NOM, DLIEU

28
Exercice 19
  • Retrouvez le nom et le lieu de chaque département
    ainsi que le nombre demployés quil contienne.
  • DEPT_NB_EMPL(DNUM, DNOM, NB_EMPL) ? NUMÉRO,
    DEPARTEMENT. NOM ? COUNT NAS ( DEPARTEMENT X
    NUMÉRO DNO EMPLOYE )
  • ? DNOM, DLIEU, NB_EMPL( DEPT_NB_EMPL X
    DNUMDNUMÉROLIEU_DEPT )

29
Exercice 19
  • Retrouvez le nom et le lieu de chaque département
    ainsi que le nombre demployés quil contienne.
  • SELECT D.NOM, DLIEU, COUNT() FROM EMPLOYE,
    DEPARTEMENT D, LIEU_DEPT WHERE DNO
    NUMÉRO AND DNUMÉRO NUMÉRO GROUP
    BY D.NOM, DLIEU

30
Exercice 20
  • Pour chaque département ayant plus de 10
    employés, retrouvez leur nom et leur lieu ainsi
    que le nombre de projet quil contrôle.
  • DEPT_NB_EMPL(DNUMÉRO, DNOM, NB_EMPL) ? NUMÉRO,
    DEPARTEMENT. NOM ? COUNT NAS ( DEPARTEMENT X
    NUMÉRO DNO EMPLOYE )
  • DEPT_NB_PROJ(DNUM, DNOM, NB_PROJ) ? DNUMÉRO,
    DNOM ? COUNT PROJET.NUMÉRO ( DEPT_NB_EMPL X
    DNUMÉRO DNUM ? NB_EMPL gt 10 PROJET)
  • (suite?)

31
Exercice 20
  • ? DNOM, DLIEU, NB_PROJ( DEPT_NB_PROJ
    XDNUMDNUMÉRO LIEU_DEPT )

32
Exercice 20
  • Pour chaque département ayant plus de 10
    employés, retrouvez leur nom et leur lieu ainsi
    que le nombre de projet quil contrôle.
  • SELECT D.NOM, DLIEU, COUNT() FROM PROJET P,
    DEPARTEMENT D, LIEU_DEPT WHERE DNUM
    D.NUMÉRO AND DNUMÉRO D.NUMÉRO AND (
    SELECT COUNT() FROM EMPLOYE WHERE DNO
    D.NUMÉRO) gt 10
  • GROUP BY D.NOM, DLIEU
Write a Comment
User Comments (0)
About PowerShow.com