Untitled

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

create table departement (numdept int auto_increment not null primary key ,nomd

varchar(20) not null ,lieu varchar(20) not null);


create table employe ( matr int not null primary key ,nome varchar(20) not
null,poste varchar(20) not null,sup int ,datemb date not null ,sal decimal(7,2)
not null ,comm decimal(7,2) ,numdept int,constraint foreign key(numdept)
references departement(numdept), foreign key(sup) references employe (matr)));
insert into departement (numdeptnomd,lieu) values (1,"finance","rabat"),
(2,"recherches","casablanca"),(3,"ventes","fes"),(4,"fabrication","kenitra");
insert into employe(matr,nome,poste,sup,datemb,sal,comm,numdept) values
(369,"amine","sectretaire",902,"1980-12-02",6400.00,NULL,2),
(499,"houda","commercial",698,"1981-02-20",12800.00,2400.00,3),
(521,"karim","commercial",698,"1981-10-22",10000.00,4000.00,3),
(566,"ali","directeur",839,"1981-03-02",23000.00,NULL,2),
(654,"zakaria","commercial",698,"1981-05-28",10000.00,11200.00,3),
(698,"meryem","directeur",839,"1981-05-01",22800.00,NULL,3),
(782,"zineb","directeur",839,"1981-06-09",19600.00,NULL,1),
(788,"khalid","ingenieur",566,"1985-04-14",24000.00,NULL,2),
(839,"abdellah","president",NULL,"1981-11-17",40000.00,NULL,1),
(844,"mohamed","commercial",698,"1981-05-08",12000.00,0.00,3),
(876,"sarah","secretaire",788,"1985-05-10",8800.00,NULL,2),
(900,"sanae","secretaire",698,"1981-12-03",7600.00,NULL,3),
(902,"imane","ingenieur",566,"1981-12-17",24000.00,NULL,2),
(934,"mehdi","sectretaire",782,"1982-08-23",10400.00,NULL,1);

select nome from employe where sal<comm ;


select nome from employe where comm is null;
select nome from employe where nome like "_e%";
select nome from employe where sal between 12000 and 18000 ; or select nome from
employe where sal+comm between 12000 and 18000 ;
select nome , lieu from employe natural join departement;
select distinct lieu from employe natural join departement where comm is not null;
select nome from employe where matr in (select sup from employe);
select numdept , lieu from departement where numdept in ( select numdept from
employe where poste="ingenieur");
select numdept , lieu from departement where numdept not in ( select numdept from
employe where poste="ingenieur");
select nome from employe where sal > all (select sal from employe where poste
="commercial");
select nome from employe as e where sal > all(select sal from employe as c where
poste ="commercial" and c.numdept=e.numdept);
select numdept , count(*) as nombre_employes from employe group by numdept;
select sum(sal) as total from employe group by sal having sup = (select sup from
employe where nomeE="zakaria");?????
select sum(sal) from employe where sup = (select sup from employe where
nome="zakaria");
select nome from employe where sal=(select max(sal) from employe);

You might also like