You are on page 1of 4

Dorsaf Elhamedi

INGTA-1F

TD-LMD

1)
create sequence Intervention_Seq

start with 100

increment by 100

piece :
insert into piece (codPiece,qtestck,couleur) values (‘P001’,0,'Grise');

insert into piece (codPiece,qtestck,couleur) values (‘P002’,0,'Noir');

insert into piece (codPiece,qtestck,couleur) values (‘P003’,0,'Noir');

insert into piece (codPiece,qtestck,couleur) values (‘P004’,0,'Grise');

fournisseur :
insert into fournisseur values ('Fr001','STPR','Tunis',0);

insert into fournisseur values ('Fr002','Ateliers RN','rades',0);

select * from fournisseur;

intervention :
insert into intervention (numINt,typeInt,dateDebInt) values
(Intervention_Seq.NEXTVAL,'maintenance',to_date('02/02/2022','dd/mm/yyyy'));

insert into intervention (numINt,typeInt,dateDebInt,dateFinInt)


values(Intervention_Seq.NEXTVAL,'Tôlerie',to_date('02/02/2022','dd/mm/yyyy'),sysdate);
insert into intervention (numINt,typeInt,dateDebInt) values(Intervention_Seq.NEXTVAL,'Boite
vitesse',to_date('02/02/2022','dd/mm/yyyy'));

entree:
Dorsaf Elhamedi
INGTA-1F
insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P001’, 'Fr001',
to_date('02/02/2022','dd/mm/yyyy'), 10, 100);

insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P002’, 'Fr001',
to_date('05/03/2022','dd/mm/yyyy'), 10, 100);

insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P003’, 'Fr001',
to_date('12/12/2020','dd/mm/yyyy'), 10, 100);

insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P004’, 'Fr001',
to_date('22/10/2020','dd/mm/yyyy'), 10, 100);

insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P001’, 'Fr002',
to_date('18/04/2019','dd/mm/yyyy'), 10, 100);
insert into entree (codpiece, Codfr, dateEntree, qteEntree, prixAchat) VALUES (‘P003’, 'Fr002',
to_date('14/0/2018','dd/mm/yyyy'), 10, 100);

utilisation:
insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (100, ‘P001’,
to_date('02/05/2022','dd/mm/yyyy'), 3, 105);
insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (100, ‘P002’,
to_date('02/04/2022','dd/mm/yyyy'), 2, 105);

insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (200, ‘P002’,
to_date('10/08/202','dd/mm/yyyy'), 3, 105);

insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (300, ‘P001’,
to_date('05/12/2022','dd/mm/yyyy'), 4, 105);

insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (300, ‘P002’,
to_date('02/10/2022','dd/mm/yyyy'), 2, 105);

insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (300, ‘P003’,
to_date('02/11/2022','dd/mm/yyyy'), 2, 105);

insert into Utilisation (numInt, Codpiece, dateSortie, qteSortie, prixSortie) VALUES (300, ‘P002’,
sysdate, 1, 105);

2)
select f.codfr,f.nomfr from fournisseur f,entree e where e.codfr=f.codfr and e.codpiece =‘P002’;

3)
Select distinct f.codfr, f.nomfr from fournisseur f,entree e,piece p
Dorsaf Elhamedi
INGTA-1F
where e.codfr=f.codfr

and e.codpiece =p.codpiece

and lower(p.couleur)='grise'

order by f.adrfr desc;

4)
select codfr,nomfr from fournisseur where codfr not in (select codfr from entree)

5)
create or replace view VTotalAchatParFr (codfr,totalAchat) as

select Codfr ,sum(prixAchat*qteEntree) from entree group by Codfr;

select * from VTotalAchatParFr;

6)
select v.codfr,f.nomfr,f.adrfr from fournisseur f , VTotalAchatParFr v

where v.codfr=f.codfr

and v.totalAchat = (select max(totalAchat) from VTotalAchatParFr );

7)
update fournisseur set soldefr = (select v.totalAchat from VTotalAchatParFr v where v.codfr =
fournisseur.codfr)

8)
select * from intervention where

dateFinInt - dateDebInt =(select max(dateFinInt-dateDebInt) from intervention);

9)
create or replace view VTotalQuantiteUtilisation (codPiece,TotalqteSortie) as select codPiece,
sum(qteSortie ) from utilisation group by codPiece;
Dorsaf Elhamedi
INGTA-1F
select v.codPiece , p.couleur from piece p , VTotalQuantiteUtilisation v where

v.codPiece=p.codPiece

and v.TotalqteSortie = (select max(TotalqteSortie) from VTotalQuantiteUtilisation) ;

You might also like