Exercices TD SQL bases de données pdf

Solution TP5 BDD MIPS4_@hm.pdf

Télécharger PDF

Exercice 1:

1) a- select e.nomE, e.numdept, e.poste from emp e, dept d where e.numdept=d.numdept and d.lieu='PARIS';

b- select nomE, numdept, poste from emp where numdept=(select numdept from dept where lieu='PARIS');

2) select e.nomE , e.numdept, e.poste from emp e, dept d where e.numdept=d.numdept and nomdept='VENTES';

3) select nomE,dateEmb,salaire from emp where nomE <> 'DUBOIS' and (salaire,ifnull(commission,0))=(select salaire,ifnull(commission,0) from emp where nomE='DUBOIS');

4) select e.nomE, d.nomdept, e.salaire from dept d, emp e where d.numdept= e.numdept and d.lieu<>'PARIS' and (e.salaire, ifnull(e.commission,0))IN (select emp.salaire, ifnull(emp.commission,0) from emp, dept where emp.numdept= dept.numdept and dept.lieu='PARIS');

5) select e1.nomE from emp e1 where exists (select e2.matr from emp e2 where e1.numdept=e2.numdept and e1.dateEmb>e2.dateEmb and e1.salaire< e2.salaire);

6) select matr,salaire,m.numdept,salmoy from emp e, (select numdept,AVG(salaire) salmoy from emp group by numdept)m where e.numdept=m.numdept and salaire>salmoy order by salmoy;

Exercice 2:

1) Nombre d'employés de chaque département.

a. Select numdept, count(*) "Nombreemployes" from emp group by numdept ;

2) Total des salaires des employés qui ont le même supérieur direct que BIRAUD.

a. Select sum(salaire) from emp Where sup = (select sup from emp where NomE='BIRAUD');

3) Nom de l'employé (ou des employés) qui a le plus gros salaire.

a. select NomE, salaire from emp where salaire = (select max(salaire) from emp) ;

4) les noms des employés qui ont les trois plus gros salaires (avec leur salaire).

a. Select NomE from emp Order by salaire Limit 3;

5) Totaux des salaires par poste et par département :

Select numdept, poste, sum (salaire) From emp Group by numdep,poste ;

6) Liste des numéros des départements qui ont plus d'employés que le département10.

Select numdept, count(*) from emp Group by numdept having count(*) > ( select count(*) from emp where numdept = 10);

7) Liste des numéros de département triés par nombres d'employés.

a. Select Numdept, count(*) From emp Group by Numdept Order by count(*) ;

8) Liste des divers postes, en n'affichant chaque poste qu'une seule fois

a. select distinct poste from emp;

9) Afficher Noms des employés dont le salaire est inférieur à la commission.

b. Select nomE from emp where sal<ifnull(comm,0);

10) Afficher Noms des employés dont le salaire est supérieur à la commission.

c. Select nomE from emp where sal>ifnull(comm,0);

11) Noms des employés qui ne touchent pas de commission.

d. Select nomE from emp where commission isNULL

12) Noms des employés dont la 2ème lettre est un E.

e. Select nomE from emp where nomE like'_E%';

13) Numéros de département dont au moins un employé touche une commission

f. Select distinct dept from emp where commission Is not null

14) Noms des employés qui touchent entre2.000 et8.000 €.

g. Select nomE from emp where salaire between 2000 and 8000;

15)En utilisant les jointures :

16) Noms des employés et lieu où ils travaillent.

h. Select nome, lieu from emp, dept where emp.dept=dept.dept;

17) Lieu des départements dans lesquels des employés touchent une commission

i. Select lieu from emp, dept where emp.dept=dept.dept and emp.commission is not null;

18) nom des employés qui ont un supérieur, suivi du nom du supérieur

j. Select e.nome, s.nome from emp e, emp s wheree.sup =s.matr;

19) Noms des projets où sont inscrits des employés des départements de Grenoble.

k. Select distinct nomP from emp, dept, participation, projet where participation.codeP=projet.codeP and emp.matr=participation.matr and emp.dept=dept.dept and dept.lieu ='GRENOBLE';

FAQ

1. Comment sélectionner les employés d'un département spécifique ?

Utilisez la clause WHERE pour filtrer les employés par département.

2. Comment calculer le total des salaires des employés ?

Utilisez la fonction SUM pour additionner les salaires des employés.

3. Comment afficher les employés avec les trois plus gros salaires ?

Utilisez l'ordre de tri et la clause LIMIT pour sélectionner les trois premiers résultats.

Cela peut vous intéresser :

Partagez vos remarques, questions , propositions d'amélioration ou d'autres cours à ajouter dans notre site

Enregistrer un commentaire (0)
Plus récente Plus ancienne