Vous êtes sur la page 1sur 2

11.

a.care este produsul cu cea mai mare cantitate in stoc?


select nume,cantitate
from produse
where cantitate=(select max(cantitate) from produse)
b.adisati pretul mediu al produselor din stoc
select avg(pret) from produse
12.
a.care este numarul de produse din magazin?
select count(codprod)
from produse
b.afisati produsele care au pretul mai mare decat pretul mediu
select nume,pret
from produse
where pret>(select avg(pret)from produse)
13.
a.care sunt produsele cumparate de mai mult de 2 clienti?
select p.nume,p.culoare,v.codprod
from produse p,vanzari v
where p.codprod=v.codprod
group by v.codprod,p.nume,p.culoare
having count(v.codprod)>2
b.afisati numarul de cumparaturi efectuate de fiecare client precum si codul cli
entului
select codcli,count(v.codcli)
from vanzari v
group by codcli
14.
a.afisati produsele cumparate de clientii din Bucuresti
select p.nume,c.nume
from clienti c,vanzari v,produse p
where c.codcli=v.codcli and p.codprod=v.codprod and c.codcli in (select codcli f
rom clienti where upper(localitate)='BUCURESTI')
b.utilizand o comanda dml inserati un nou produs in tabela produse
insert into
produse(codprod,nume,culoare,cantiate,pret)
values(6,'marker','albastru',20,94)
15.
a.afisati denumirea celui mai bine vandut produs si cantitatea vanduta
select*
from (select p.nume,sum(v.cantitate)
from produse p,vanzari v
where v.codprod=p.codprod
group by p.nume
order by sum(v.cantitate) desc)
where rownum=1
b.eliminati din tabelaproduse toate produsele de culoare verde
delete from produse where culoare='verde'
16.
a.afisati numele tuturor angajattilor care lucreaza la etajul 1 si castiga mia m
ult de 150 ron
select a.nume
from angajati a,departamente d
where a.id_dep=d.id_dep and d.etaj=1 and a.salariu>150

b.afisati profesiile angajatilor din firma in ordine alfabetica


select denumire as "profesii"
from incadrari
order by denumire
17.
a.afisati numele tuturor angajatilor care castiga mai mult de 400 ron si lucreaz
a fie in departamentul IT,fie in departamentul PERSONAL
select a.nume,a.salariu
from angajati a,departamente d
where a.id_dep=d.id_dep and a.salariu>350 and (upper(d.nume)='IT' or upper (d.nu
me)= 'PERSONAL')
b.ce profesie are angajatul care castiga cel mai mult
select i.denumire,a.nume
from incadrari1 i,angajati a
where a.salariu=(select max(salariu) from angajati) and a.id_prof=i.id_prof
18.
a.angajatii din departamentul it primesc o marire de salariu de 25%.afisati nume
le fiecarui angajat din departamentul it si valoarea noului salariu
select a.nume,a.salariu*1.25 as "salariu marit", d.nume as "departament"
from angajati a,departamente d
where a.id_dep=d.id_dep and upper(d.nume)='it'
b.afisati numele angajatilor care au salariu cuprins intre 150 ron si 400 ron
select nume,salariu
from angajati
where salariu<400 and salariu>150
19.
a.afisati numele departamentelor de la etajul 1
select nume,etaj
from departamente
where etaj=1
b.afisati angajatii care au un salariu mmmai mare decat salariul mediu asociat p
rofesiei sale
select a.nume,a.salariu,(i.salmax+i.salmin)/2
from angajati a,incadrari1 i
where a.salariu>(i.salmax+i.salmin)/2 and i.id_prof=a.id_prof
20.
a.afisati angajatii care au un salariu mai mic decat media salariilor din firma
select a.nume,a.salariu
from angajati a
where a.salariu<(select avg(salariu) from angajati)
b.afisati numele managerului pentru fiecare departament
select a.nume,d.nume
from angajati a,departamente d
where a.id_dep=d.id_dep and a.id_ang=d.id_manager

Vous aimerez peut-être aussi