You are on page 1of 29

1.

Se considera tabela ANGAJATI cu structura:

CNP, NUME, DATA_ANGAJARE, DATA_NASTERE, SALARIU. a. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare; b. c. d. e. f. Sa se afiseze pe ecran toti angajatii cu o vechime mai mare de 10 ani; Stergeti din baza de date toate persoanele cu numele dat de la tastatura; Afisati pe ecran numele celor mai vechi angajati; Modificati salariul persoanei cu numele Popescu marindu-l cu 10%; Afisati numarul de angajari din fiecare an.

Rezolvare: b. select * from angajati where ((sysdate-data_angajare)/3650) >10; c. delete from angajati where nume=:x; d. select nume from angajati where data_angajare=(select min(data_angajare) from angajati); e. select salariu+10*salariu/100 from angajati where nume= Popescu ; f. select count(*) from angajati as nr_ang , to char(data_a, yyyy ) from angajati group by to_char(data_a, yyyy )

2.

Se considera tabela ELEVI cu structura:

NUME_PREN , NOTA_RO, NOTA_MAT, NOTA_GI, REZULTAT, MEDIE a. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare; b. Completati campul Rezultat cu valoarea promovat daca elevul a promovat te stul national (note minimum 5 la cele 3 discipline) nepromovat in caz contrar; c. Pentru elevii promovati calculati media generala la disciplina romana;

d. Determinati procentul de promovabilitate (nr elevi promovati / nr elevi in scrisi); e. Afisati elevii care au obtinut cea mai mare medie;

f. Afisati pe ecran elevii grupati dupa rezultat (promovat/nepromovat), apoi alfabetic dupa nume; Rezolvare:

c. select avg(nota_ro) from elevi where rezultat= promovat ; d. select ((select count (*) from elevi where rezultat= promovat )/(select count (*) from elevi)) from dual e. select num_pren, medie from elevi where medie=(select max(medie) from ele vi); f. select * from elevi order by rezultat desc, nume_pren.

3.

Se considera tabela FILME cu structura:

NUME, GEN, BUGET, DATA_AP a. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare; b. c. d. e. f. Afisati pe ecran filmele gen comedie cu buget >10000;

Afisati toate filmele din tabela grupate pe genuri; Afisati filmul care a avut cel mai mare buget; Stergeti din tabela filmele in aparute inainte de 1-ian-1990; Calculati bugetul total al tuturor filmelor gen aventura .

Rezolvare: b. select nume from filme where gen= comedie and buget>10000;

c. select nume, gen, buget, data_ap from filme order by gen; d. select nume from filme where buget=(select max(buget) from filme); e. delete from filme where data_ap< 1-01-1991 ; f. select sum(buget) from filme where gen= comedie ;

4.

Se considera tabela ELEVI cu structura:

NUME, CLASA, MEDIE, ABS_NEM g. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare h. i. e; j. . Afisati elevul (elevii) cu media cea mai mare din clasa 12A; Afisati pe ecran in ordine alfabetica elevii cu peste 20 absente nemotivat Aflati suma totala a absentelor nemotivate pe fiecare clasa; Stergeti elevii cu peste 40 absente nemotivate;

 

Rezolvare: Popescu Gigel se muta din clasa 12A in clasa 12B. Afisati numarul de profesori de la fiecare catedra. select nume from profesori where grad=1. SALAR. c. TRANSPORT (avion. Afisati alfabetic profesorii care sunt diriginti. Stergeti din tabela profesorii care implinesc 60 ani in anul calendaristic curent f. d. e. DURATA. e. 5. DIRIG a. select * from elevi where abs_nem>20 order by nume. sum(abs_nem) as total_absente from elevi group by clasa. Afisati excursiile din tabela cu destinatia NISA ordonate crescator dupa da . c. PRET. f. 6.l. Faceti modificarile b. delete from profesori where (sysdate-data_nast)/365=60. c. CATEDRA. DATA_PL. Aflati salariul mediu pe coala si numarul de profesori care au mai putin d e salariul mediu d. catedra from profesori group by catedra. f. delete from elevi where abs_nem>40. Elevul necesare. select nume from profesori where dirig= da order by nume. DATA_NAST. etc) a. select count (*). Rezolvare: b. update elevi set clasa= 12b where nume= popescu gigel . Afisati profesorii cu gradul I. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare b. Se considera tabela PROFESORI cu structura: NUME. autocar. d. select nume from elevi where medie=(select max(medie) from elevi where cla sa= 12a ) and clasa= 12a . e. select count(*) from profesori where salariu<(select avg(salariu) from profesori). select clasa. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare b. GRAD. Se considera tabela EXCURSII cu structura: DESTI NATIE.

e. c. d. c. . Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. PRET_BUC. select count(sortiment) from ciocolata group by firma_prod. Aflati destinatia (destinatiile) cea mai ieftina Afisati excursiile din tabela grupate pe destinatii Modificati pretul la excursiile cu avionul (pretul excursiei scade cu 25%) f. e. b. select firma_prod from ciocolata where pret_buc=(select min(pret_buc) from Poiana . d. f. select destinatie from excursii where pret=(select min(pret) 7. c. e. Primol ciocolata). f. update excursii set pret=pret-25*pret/100 where transport= avio n . select * from ciocolata where pret_buc>20 order by firma_prod. Afisati pentru fiecare firma numarul de sortimente de ciocolata. Stergeti din tabela excursiile care s-au desfasurat sau care sunt in curs de desfasurare (au data plecarii anterioara datei curente) Rezolvare: b. order by data_pl. delete from excursii where data_pl<=sysdate. update ciocolata set pret_buc=pret_buc-15*pret_buc/100 where firma_prod = pr imola . d. b.Se considera tabela CIOCOLATA cu structura: SORTIMENT. FIRMA_PROD a. Modificati pretul_bucata (scade cu 15%) la toate sortimentele firmei Stergeti din tabela toate sortimentele firmei Rezolvare: a. delete from ciocolata where firma_prod= poiana . Afisati sortimentele de ciocolata ce au pretul_bucata >20 Ron ordonata alf abetic dupa firma producatoare. Aflati firma (firmele) ce produce cea mai ieftina ciocolata.ta plecarii c. select destinatie from excursii group by destinatie. select * from excursii where destinatie= nisa from excursii). d. a . e.

c.Se considera tabela FARMACIE cu structura: MEDICAMENT.Se considera tabela LIBRARIE cu structura: TITLU. f.Micsorati pretul cu 5% la medicamentul aspirina. . select * from librarie where pret_buc=(select max(pret_buc) fr om librarie).Aflati pretul unui medicament dat de la tastatura. b.2010 . PRET a. select sum(pret_buc) from librarie where editura= donaris .Sa se creeze tabela si sa se introduca 10 articole care sa co respunda cerintelor urmatoare. f. c. e. f. AUTOR. PRET_BUC. delete from librarie where pret_buc>20 and editura=:x.03. select * from librarie where autor= mihai eminescu _buc desc.Aflati costul total al tuturor cartilor de la editura d.8.Afisati pentru fiecare autor numarul total al cartilor sale. e. select * from farmacie where data_exp= 11. order by pret 9.Stergeti din tabela cartile cu pretul mai mare de 25 Ron si a parute la editura X (X de la tastatura) Rezolvare: b.Afisati medicamentele care mai au o luna pana la expirare c. b. Rezolvare: b.Aflati medicamentul(medicamentele) cel mai ieftin. Mihai Eminescu ordonate descre Donaris .Aflati cartea (cartile) cea mai scumpa. select autor.Afisati toate cartile autorului scator dupa pret. d.Stergeti din tabela medicamentele care au data de expirare a stazi. EDITURA a. d. e. DATA_EXP.Sa se creeze tabela si sa se introduca 10 articole care sa c orespunda cerintelor urmatoare. count(*) from librarie group by autor.

Stergeti concurentii care au media finala sub 5.Afisati mediile generale pe judete (media aritmetica a notelor finale p entru fiecare judet).Aflati firma (firmele) cu cei mai multi angajati. f. c. d. 11. select judet.Se considera tabela FIRME cu structura: NUME. c. NR_ANG a. select * from concurs where nota_fin=(select max(nota_fin) from concurs).Mariti cu 10% capitalul social al firmei x preluata de la tastat ura. ORAS.Afisati firmele din tabela grupate pe orase. JUDET a. e. 10. e. NOTA_FIN. d. Rezolvare: b.Se considera tabela CONCURS cu structura : NUME.Afisati concurentii care au obtinut nota finala peste 7 in ordinea desc rescatoare a mediilor.Afisati candidatul (candidatii) cu nota finala maxima. update concurs set nota_fin=(nota1+ nota2+ nota3)/3. d. . NOTA2. b.2010 . avg(nota_fin) from concurs group by judet. b. update farmacie set pret=pret-5*pret/100 where medicament= as pirina . DATA_NAST. nota_fin. f.Calculati nota_fin (media aritmetica a celor 3 note) pentru fiecare can didat.02.Sa se creeze tabela si sa se introduca 10 articole care sa corespunda cerintelor urmatoare. CAPITAL. d. NOTA3.Afisati firmele care au cel putin 3 ani de la infiintare ordonat e alfabetic. judet from concurs where nota_fin>7 order by nota_fin desc.Sa se creeze tabela si sa se introduca 10 articole care sa cores punda cerintelor urmatoare. select * from farmacie where pret=(select min(pret) from fa rmacie). e. c. f. delete from farmacie where data_exp= 11.c. select pret from farmacie where medicament=:x. NOTA1. select nume. e. delete from concurs where nota_fin<5. DATA_AP.

PRET.Sa se afiseze valoarea cartilor pentru fiecare autor a carui nume incepe cu litera A. d. f. update carti set pret=pret-10*pret/100. GEN. a.f. AN_APARITIE. e. f. select pret. b.Se considera tabela TARI cu structura: NUME. c. Rezolvare: b. select gen from carti group by gen. c.Sa se afiseze tarile a caror regiune este introdusa de la tastatu   .Se considera tabela CARTI cu structura: COD_CARTE. oras from firme group by oras. PIB (produsul intern brut al unei tari). select nume from firme where nr_ang=(select max(nr_ang) from fir me).Sa se afiseze denumirea cartii si autorul pentru care pretul este maxim. d. c. f.Sa se diminueze cu 10% pretul cartilor al caror an de aparitie es te introdus de la tastatura. c. b. d. e. select nume.Sa se afiseze cartile a caror pret nu depaseste 10 RON. autor from where pret=(select max(pret) from carti). a. 13. e.Sa se creeze tabela si sa se introduca 10 articole care sa coresp unda cerintelor urmatoare. select * from carti where autor li e a% . SUPRAFATA. REGIUNE. select * from firme where (sysdate-data_ap)/365>=3.Sa se afiseze tarile a caror populatie este mai mare de 20 milioa ne. POPULATIE.Sa se creeze tabela si sa se introduca 10 articole care sa cores punda cerintelor urmatoare. DENUMIRE_CARTE. update firme set capital= capital+10*capital/100 where nume=:x. Rezolvare: b. select * from carti where pret<10.Stergeti din tabela firmele care au capital social <1000 Ron. AUTOR. delete from firme where capital<1000. 12.Sa se afiseze cartea si autorul pe genuri literare.

AN_CON (anul construir ii). f. d. PRO DUCTIVITATE. d. c. Rezolvare: b.Sa se stearga datele din baza de date pentru o sectie a carui cod este introdus de la tastatura. b. CIFRA_A(cifra de afaceri).Sa se creeze tabela si sa se introduca 10 articole care sa coresp unda cerintelor urmatoare.DENUMIRE. select * from tari order by pib desc.Afisati tarile in ordine descrescatoare a valorii produsului inte rn brut. LOCALITATE.Sa se completeze campul productivitate dupa formula cifra de afac eri/numar de angajati.ra.Sa se afiseze sectiile cu numarul de angajati mai mare de 1000. update sectie set productivitate=cifra_a/nr_ang. 14. a. select regiune. select * from sectie where productivitate=(select max(productiv itate) from sectie). c. c. e. select * from sectie where nr_ang>1000. select * from tari where suprafata=(select min(suprafata) from tari). d. 15.Se considera tabela SECTIE cu structura: COD_SECTIE. e. PRODUCTIE. . delete from sectie where cod_sectie=:x.Sa se afiseze tarile cu suprafata minima.Sa se ordoneze crescator dupa productie.Afisati sectiile cu productivitatea cea mai mare. f. d. count(regiune) from tari group by regiune.Se considera tabela CLADIRI cu structura: DENUMIRE. e. NR_ANGAJATI. select * from tari where populatie>20 milioane. INDICE.Sa se afiseze numarul tarilor pe regiuni. f. VAL_ACT (valoarea actualizata). f. Rezolvare: b. VAL_INV (valoarea investitiei). select * from tari where regiune=:x. select * from sectie order by productivitate desc. e.

c. select * from materiale where intrari=(select min(intrari) from materiale) . f. e. d. d. select * from cladiri where val_act<1000. c. d. b.Stergeti din tabela materialele care au stocul final cuprins in int ervalul a. Rezolvare: b.Afisati cate cladiri au fost construite in fiecare localitate. f. d. STOC_I (stoc ini?ial).Sa se creeze tabela si sa se introduca 10 articole care sa core spunda cerintelor urmatoare.Sa se afiseze denumirea cladirilor a carei valoare actualizata este mai mica de 100. select loc. select * from materiale where stoc_f=0. Rezolvare: b. select * from materiale order by stoc_f. an_con from cladiri where loc=:x. update cladiri set indice=2 where an_con>=1950.Afisati materialele in ordine crescatoare a stocurilor initiale. select val_inv. 16.Sa se afiseze materialele a caror stoc final este egal cu zero. f. update materiale set stoc_f=stoc_i+intrari-iesiri c. IESIRI.Afisati materialele pentru care valoarea intrarii este cea mai mica .Se considera tabela MATERIALE cu structura: DEN_MAT. e. STOC_F (stoc final) a. e.000 RON. c.Modificati campul indice cu valoarea 1 pentru cladirile constru ite inainte de 1950 si cu 2 pentru cladirile construite dupa 1950.a. count(loc) from cladiri group by loc.b (a si b citite de la tastatura). update cladiri set indice=1 where an_con<1950.Sa se creeze tabela si sa se introduca 10 articole care sa corespun da cerintelor urmatoare. select count(*) from cladiri where an_con=1970.Afisati numarul cladirilor construite in anul 1970.Sa se completeze campul stoc final dupa formula: stoc initial+intra ri-iesiri. b. e. INTRARI .Sa se afiseze valoarea investitiei si anul constructiei pentru o cladire a carei denumire este introdusa de la tastatura.

Sa se afiseze care este sportivul cu inaltimea cea mai mare care face   b. Fotbal . ETAJ . 17. MEDIC.Sa se creeze tabela si sa se introduca 10 articole care sa cor espunda cerintelor urmatoare. Rezolvare: b.Afisati cati pacienti sunt internati avand diagnosticul GRIPA d. count(*) from spitale group by salon. e. . d. f. SPORT . INALTIME.Sa se afiseze sportivii de la haltere a caror greutate este de 80 g. select * from sportivi order by sport. Rezolvare: b. SALON.Stergeti din tabela inregistrarea corespunzatoare unui pacient introdus de la tastatura. c.f. select salon. f.Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. delete from materiale where :a<stoc_f and stoc_f <:b. select medic. select count(*). e.Se considera tabela SPORTIVI cu structura: NUME. SEX.Sa se afiseze cati sportivi practica handbal. select * from spitale order by nume_p.Listati alfabetic sportivii ordonandu-i dupa sporturile pe care le pra ctica. DIAGNOSTIC. 18. b. respectiv pentru fete .Lista alfabetica a pacientilor.Afisati numarul de pacienti a fiecarui medic. d. a. GREUTATE. and greutate=80.Afisati care este media de varsta pentru baieti. e. f. c. select * from sportivi where sport= haltere c. nume_p from spitale where diagnostic= gripa .Sa se afiseze care este salonul cu numar maxim de pacienti. a. from spitale group by m c. VARSTA. count(medic) as nr pacienti edic.Se considera tabela SPITALE cu structura: NUME_P. delete from spitale where nume_p=:x.

Sa se afiseze abonatii cu valoarea facturata cea mai mare.25 lei.Sa se afiseze cate persoane au venit peste 10 milioane. select count(*) from sportivi where sport= fotbal .Se considera tabela STATISTICA cu structura: NUME. f. 20. CNP. ACHITAT. e. MIN_UTILIZATE. vanzat . select count(*) from statistica where venit>10.Sa se creeze tabela si sa se introduca 10 articole care sa coresp unda cerintelor urmatoare. a. c. b. domeniu from statistica group by domeniu. delete from statistica where studii=:x. select (select count(*) from statistica where ocupatia= vanzator )/(s elect count(*) from statistica) * 100 from dual.Se considera tabela ABONATI cu structura: NUME.d. a.Sa se afiseze cat la suta reprezinta persoanele cu ocupatia or din acest sondaj. e.Sa se creeze tabela si sa se introduca 10 articole care sa core spunda cerintelor urmatoare. VALOARE.Pentru abonatul a carui CNP s-a introdus de la tastatura sa se indice daca a achitat.Afisati care sunt persoanele cu venit maxim din domeniul educatie i. select nume from statistica where venit=(select max(venit) from statistica where domeniu = educational ) and domeniu= educational . d. select sum(venit).Sa se determine venitul total pe domenii. RETEA. e. c. e. select avg(varsta) from sportivi where sex= f .Sa se afiseze pentru fiecare abonat valoarea facturii pe care t rebuie sa o achite cunoscand ca minutele suplimentare costa cu 10% mai mult deca t minutele incluse si ca tariful unui minut inclus este de 0. select nume from sportivi where inaltime=(select max(inaltime) from sportivi) and sport= handbal . VENIT. f. OCUPATIA .Sa se stearga din baza de date informatiile corespunzatoare studi ilor introduse de la tastatura. d. STUDII. d. f. select avg(varsta) from sportivi where sex= m . Rezolvare: b. MIN_INCLUSE.Afisati abonatii care sunt restanti. b. DOMENIU. c. 19.

select * from abonati where achitat=0. PRENUME.Se considera tabela STUDENTI cu structura: NUME.50 inclu siv). f. update abonati set factura=0. select count(*). select nume from studenti where medie>=9. CLASA. b. BURSA.f. delete from studenti where medie<=8.Afisati numarul studentilor bursieri din fiecare an.Sa se afiseze cati studenti primesc bursa din anul I.Sa se afiseze valoarea obtinuta din incasari pentru fiecare ret ea. CODSEFCLASA . Se considera tabela ELEVI cu structura: CODELEV. Rezolvare: b. MEDIE. select count(*) from studenti where bursa< >0 and an=1. d. d. f.25*min_incluse+0. select sum(factura). select nume from abonati where factura=(select max(factura) f rom abonati). Rezolvare: b. e. d. c. MEDIA.Afisati care este valoarea maxima a bursei dupa marirea cu 20% f. e.Sa se stearga studentii care au pierdut bursa(media este sub 8). alter table abonati add factura number update abonati set factura=0. 21.5. e. AN.25*min_incluse where (min_utili zate-min_incluse)<=0.275*(min_utili zate-min_incluse) where (min_utilizate-min_incluse)>0. select achitat from abonati where cnp=:x. a. retea from abonati group by retea. CNP.Afisati studentii care au bursa de merit(media peste 9. c. NUME. an. update studenti set bursa=bursa+20*bursa/100 select bursa from studenti where bursa=(select max(bursa) from studenti). from studenti where bursa< >0 group by an. 22. c.Sa se creeze tabela si sa se introduca 10 articole care sa core spunda cerintelor urmatoare.

CAL. Cati elevi al caror nume se termina cu litera U sunt in tabela? Me d. Afisati in ordine alfabetica toate echipele cu numele incepand cu litera S . Sa se afiseze numele persoanei/persoanelor cu cea mai mare suma pariata la un pariu. Persoana de la pariul cu codul X si-a triplat suma pariata. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. c. Sa se stearga toate pariurile din luna c urenta pe acest cal. suma de . GOL1. Actualizati ta bela. ID_ECHIPA2. Sa se creeze tabelele si sa se introduca cate 6 articole care sa corespund a cerintelor urmatoare.a. este . f. Coloana rezultata va avea aliasul dii . GOL2. 23. Meciurile din data D (citita de la tastatura) au fost amanate cu 7 zile. DATA a. d. Calul cu numele X s-a imbolnavit. Cate persoane au pariat in luna curenta pe calul cu numele C? (C dat de la tastatura). Sa se afiseze elevii cu cea mai mare medie. b. .. Adaugati o noua echipa cu id-ul 1001. NUME. ID_ECHIPA1. Se considera tabela PARIURI cu structura: CODPARIU. b. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. rezultatel e se vor afisa in formatul Media clasei este . Informatiil e se vor afisa in formatul: Persoana a pariat in data de . c. e. PERSOANA. Sa se afiseze elevii si sefii lor de clasa in formatul: Seful de clasa al e levului . d. b. Sa se afiseze toate persoanele care au pariat in trimestrul 1. e. ORAS) MECIURI (ID. f. Se considera tabelele ECHIPE si MECIURI cu structurile: ECHIPE (ID. . 24. Prima litera din numele echipei va fi litera mare. A ctualizati tabela. Sa se afiseze in ordinea alfabetica primii 3 elevi din clasa C (C citit de la tastatura). restul vor fi litere mici. pe calul c. . Pentru fiecare clasa din tabela sa se calculeze media pe clasa. care sa fie acelasi or . DATA) a.. SUMA. Se vor afisa primele trei lini i (daca exista). numele Speranta as cu echipa cu numele X (X citit de la tastatura).

NUME.id_echipa1.e. c. INSERT INTO ANGAJATI1(ID. Rezolvare: b. update echipe set nume=initcap(nume). select p. Actu alizati tabela ANGAJATI. ID_DEP. speranta . delete from meciuri where to_char(data. Afisati toate meciurile in formatul: NumeEchipa1 Rezolvare: b. d. Coloana rezultat a va avea aliasul SALARII.id=f. select nume from echipe where nume li e S% order by nume. insert into echipe (id. b. NUME. 25. .gol2 from echipe p.id_echipa2) as nume echipa 1 . Stergeti din tabela meciurile disputate in zilele de joi. day )= miercuri . nume. delete from angajati where id_dep=:x   . PRENUME. c. d. (SELECT ID_DEP FROM ANGAJATI1 WHERE NUME=:Y ). e. stergand departamentul si angajatii care lucreaza in acest departament. update meciuri set data=data+7 where data=:d. Sa se afiseze toti angajatii din departamentul cu denumirea X (X citit de la tastatura). '04-06-2008'. ID_DEP) DEPARTAMENTE (ID. SALARIU. SALARIU) VALU ES ('5'. Ac tualizati cele doua tabele.id=f. .nume from echipe p.. echipe where nume=:x)). DENUMIRE) a.. '1111') d. 'WXX'. Sa se creeze tabelele si sa se introduca cate 6 articole care sa corespund a cerintelor urmatoare. NumeEchipa2: Gol1 Gol2 . (select p. f. f. oras) value (1001. f. DATA_ANGAJARE. Rezultatele vor fi afisate in formatul Salariul maxim din departamentul . Sa se afiseze salariul maxim pentru fiecare departament. f. PRENUME. f.meciuri f where p. Departamentul cu denumirea D (D citit de la tastatura) s-a desfiintat.nume as nume echipa 1 . UPDATE ANGAJATI1 SET SALARIU=(SALARIU +(10/100)*SALARIU) WHERE ((SYSDA TE-DATA_A)>310) c. lucreaza in de partamentul .. meciuri f wher e p. este . (select oras from e. DATA_A. Sa se adauge un nou angajat care sa lucreze in acelasi departament cu anga jatul cu numele Y (Y citi de la tastatura). 'MHH'. Salariul persoanelor angajate de cel putin 10 luni se mareste cu 10%. Informatiile vor fi afisate in formatul Angajatul .gol1. Se considera tabelele ANGAJATI si DEPARTAMENTE cu structurile: ANGAJATI (ID.

Se considera tabelele NUMERE1 si NUMERE2 cu structurile: NUMERE1 ( CIFRA ) NUMERE2 ( CIFRA ) a.id_dep=d.id. e. select ( salariul maxim din departamentul as salarii from angajati group by id_dep. Sa se afiseze destinatiile in ordine alfabetica. e. SEX. Sa se creeze tabelele si sa se introduca cate 6 articole care sa corespund a cerintelor urmatoare. d. NUME. Sa se afiseze tabla inmultirii cu X (X<6 cifra nenula citita de la tastatu . Cati turisti au ales destinatia Vatra Dornei ? . a participat la excursia n perioada ." from angajati1 a. . Sa se afiseze tabla inmultirii pana la 5 in formatul at . select nume as "angajatul lucreaza la ".denumire as "departamentul. e. Informatiile vor fi afisate in formatul: Turistul . . Actualizati tabela EXCURSII.cod. Sa se afiseze cifrele din a doua tabela folosind scrierea cu cifre romane. . b. DESTINATIE . Excursiile care vor avea loc la Predeal in lunile de iarna s-au ieftinit cu 100 lei. DATA_SFARSIT. cifra x cifra = rezult c..codexc =e. select t. f. d. PRET) a. c. d.nume. Fiecare destinatie va fi afisata o singura data. Stergeti din tabela turistul cu numele X (X citit de la tastatura). salariu 26. select * from excursii order by destinatie c. excursii26 e where t. f.destinatie from turisti t. d. COD_EXC) EXCURSII (COD . Afisati turistii care au participat la excursii cu durata mai mare de 7 zi le.delete from departamente where id=34. DATA_INCEPUT. Rezolvare: b. delete from turisti where nume=:x. departamente d where a. Sa se completeze fiecare din cele doua tabele cu cifrele de la 1 la 5. b. se vor afisa primele 20 de linii. ||id_dep|| este || max(salariu)) Se considera tabelele: TURISTI si EXCURSII cu structurile: TURISTI (COD. 27. e.id_dep=(select id from departamente where denumire=:x) and a.i f.

and gr 29. Sa se afiseze produsele care expira astazi. DENUMIRE. e. DATA_EXPEDIERE. b. Cifrele din prima tabela se vor inversa: 5. rest) X (X<6 cifra nenula citita de la tastat ura).1. Sa se stearga toate pachetele expediate anul trecut care au greutatea mai mica decat X (citit de la tastatura). Se considera tabela PACHETE cu structura EXPEDITOR.3. select avg(greutate) from pachete. select * from pachete where expeditor= c. f. se vor afisa doar primele 5 li nii. d. DATA_EXP. order by destinatar. CATEGORIA. Care este valoarea totala a produselor din tabela? Afisati in formatul Valo area totala este . b. DESTINATAR. update pachete set expeditor= necunoscut where expeditor= .ra). Actualizati tabela. . 28. e. Sa se calculeze media aritmetica a greutatilor pachetelor din tabela. . c. e. d. f.2. update pachete set data_ex=nvl(data_ex. CANTITATE a. Care este destinatarul care a primit cele mai multe pachete? Rezolvare: b. Sa se afiseze in ordine alfabetica a destinatarului pachetele care nu au c ompletat expeditorul. sysdate). count(*) from pachete group by destinatar having count (*)=(select max(count(*) from pachete group by destinatar). Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare.4. Sa se afiseze catul si restul impar?irii cifrei X la toate celelalte cifre in formatul cifra / cifra = (cat. PRET. delete from pachete where data_ex> 31-12-2008 and data_ex< 01-01-2010 eutate<:x. Se completeaza cu NECUNOSCUT toti expeditorii nespecificati si cu data de astazi toate datele de expediere necompletate. Se considera tabela PRODUSE cu structura: ID. select destinatar. GREUTATE a. CATEGORIE. c. f. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare.

e. Se considera tabela CONCURENTI cu structura : . d. f. Actualizati tabela. Rezolvare: b. 3. 31. Produsele care expira maine se ieftinesc cu 50%. e. select valoarea totala este sum(pret*cantitate) from produse. select denumire. ECHIPA. data_exp. c. 24-03-2010 . categorie. f. post from fotbalisti order by echipa. update fotbalisti set echipa= Ceahlaul where numr= Ronaldo . Afisati jucatorii grupati pe echipe. delete from fotbalisti where nume=:x. iar in cadrul echipelor pe posturi Mijlocasul Ronaldo s-a transferat la echipa Cimentul. insert into produse (id. z) f. c. d. select * from fotbalisti where goluri=(select max (nrmeciuri/goluri) fro m fotbalisti). denumire. Rezolvare: b. echipa. nume. select categorie. count(*) from produse group by categorie having count( *)=(select max(count(*)) from produse group by categorie) 30. NRMECIURI. Se considera tabela FOTBALI STI cu structura: NUME. update produse set pret=0. rownum from produse where data_exp= 22-03-2010 and rownum< =5.d. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Stergeti din tabela un jucator cu numele citit de la tastatura. b. Sa se afiseze categoria / categoriile care contine cele mai multe produse. d. GOLURIMARCATE a. POST. post. select categorie from produse where id= 4 . Afisati toti jucatorii echipei Ceahlaul. e. c. cantitate) value s (20. Sa se adauge un nou produs care sa fie in aceeasi categorie cu produsul c u id-ul egal cu 4. select nume. f.5* pret where data_exp= 23-03-2010 . select * from fotbalisti where echipa= Ceahlaul . e. Afisati atacantul cu cel mai mare procent de reusita (numarul de goluri ma rcate/ numarul de meciuri jucate). sapun .

f. c. ADRESA. d. d.COD. lista concurentilor cu punctaje maxime. NUME. NR_ZILE_ SPITALIZARE a. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda cer intelor urmatoare. update concurentii set punctaj= 56 renti). Rezolvare: b. numarul de concurenti din fiecare tara. c. select * from concurenti order by punctaj desc. afisati pacientii cu un numar maxim de zile de spitalizare. nume. PUNCTAJ a. e. select * from pacienti where nr_zile_spitalizare=(select max(nr_zile_ spitalizare) from pacienti). select count(nume) from concurenti group by tara. Se considera tabela PACIENTI cu structura COD. stergeti din tabela inregistrarea corespunzatoare unui cod introdus de la tastatura. DIAGNOSTIC. c. e. afisarea clasamentului final in ordine descrescatoare a punctajelor si la punctaje egale alfabetic dupa nume. b. d. e. select * from pacienti order by nume. avg(punctaj) from concurenti group by tara having avg(pun ctaj)>(select avg(punctaj) from concurenti). citindu-se codul unui concurent si un nou punctaj al acestuia actualizati informatiile din tabela. f. numarul de pacienti pentru fiecare diagnostic. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. where cod= 5 . delete from pacienti where cod=:x. pentru un diagnostic dat mariti numarul de zile de spitalizare cu o valoar e data de la tastatura. d. . c. sa se afiseze tara /tarile cu cea mai mare medie a punctajelor. NUME. select * from concurenti where punctaj=(select max(punctaj) from concu 32. TARA. lista alfabetica a pacientilor. select tara. b. Rezolvare: b. f.

LOCALITATE. update agentii set nr_ang=(nr_ang-(nr_ang*10)/100) where cod=:v. e. Se considera tabela ANGENTII cu structura COD. afisati lista alfabetica a zonelor existente in tabela . select count(*) from agentii group by localitate. c. ZONA. 33. c. e. f. 34. NUME. c. d. lista speciilor cu numar minim de exemplare.e. Rezolvare: b. sa se afiseze localitatile care au numar numar maxim de angajati. d. select * from agentii order by denumire. f. DENUMIRE. NR_ANGAJATI a. Se considera tabela SPECII cu structura COD_SPECIE. lista alfabetica a speciilor. citindu-se codul unei agentii si un nou numar de angajati actualizati date le corespunzatoare din tabela. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. b. afisati numarul total de specii pe zone. lista alfabetica a agentiilor. select localitate from agentii where nr_ang=(select max(nr_ang) from age ntii). f. e. f. NR_EXEMPLARE a. d. modificati numarul angajatilor de la o agentie al carei cod se citeste de la tastatura diminuandu-l cu 10 %. stergeti din tabela un articol de cod introdus de la tastatura. update pacienti set nr_zile_spitalizare=nr_zile_spitalizare + :z wher e diagnostic=:v. update agentii set nr_ang=:z where cod=:v. Rezolvare: . b. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. numarul de agentii pe localitati. select count(nume) from pacienti group by diagnostic.

select * from specii order by nume. d. NUME. 36. SUMA. calculati suma totala a creditelor pe fiecare an. e.b. PERIOADA. TITLU. d. delete from biblioteca where autor=:x. NR_EXEMPLARE a. c. f. lista persoanelor pentru care perioada de creditare s-a incheiat. stergeti din tabela toate articolele unui autor introdus de la tastatura. d. select count(*) from specii group by zona. AUTOR. pentru fiecare autor afisati numarul total de exemplare. lista alfabetica a titlurilor cu numar maxim de exemplare. e. . d. Se considera tabela BIBLIOTECA cu structura COD. 35. select * from biblioteca where nr_exemplare=(select max(nr_exemplare) fro m biblioteca) order by titlu. sa se afiseze numarul total de exemplare din tabela. f. pentru un cod introdus de la tastatura actualizati tabela marind numarul d e exemplare cu 10. DATA. c. b. lista persoanelor care au credite cu sume maxime. select count(*) from biblioteca. update biblioteca set nr_exemplare=nr_exemplare+10 where cod=:x. f. Rezolvare: b. b. delete from specii where cod_specie=:x. select * from specii where nr_exemplare=(select min(nr_exemplare) from sp ecii). c. Se considera tabela CREDITE cu structura COD. a. c. select * from specii order by zona. e. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. select count(nr_exemplare) from biblioteca group by autor. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare.

PRET . PRET. numarul de publicatii cu numar maxim de exemplare. e. select count(*) from reviste where nr_exemplare=(select max(nr_exemplar e) from reviste). LOC_SOSIRE. stergeti din tabela inregistrarea corespunzatoare unui cod citit de la tas tatura. Rezolvare: b. d. to_char( data_lansare. select data. d. select count(*) to_char (data_lansare. LOC_PLECARE. yyyy ). c. pentru un cod introdus de la tastatura actualizati tabela marind numarul d e exemplare cu 100. select * from credite where data+perioada<sysdate. NR_EXEMPLARE a. DATA_LANSARE. NUME. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. d. select nume from credite where suma=(select max(suma) from credite) order by nume. lista publicatiilor lansate in anul 2009. 37. f. DATA_PLECARE. e. to_char(data_lansare. lista publicatiilor alfabetic si pe an de aparitie. Se considera tabela REVISTE cu structura COD. Se considera tabela ABONAMENTE cu structura COD. 38. select * from reviste order by nume. yyyy ) as anul from reviste group by yyyy ). sum(nume) from credite group by data. b. f. f. select * from reviste where(data_lansare>= 01-01-2009 and data_lansare<= 3112-2009 ). Rezolvare: b. update credite set perioada=(perioada+30) where cod:x. c. f. c. pentru un cod introdus de la tastatura mariti perioada de creditare cu 1 l una. calculati numarul total de publicatii pe an de aparitie.e. delete from credite where cod=:x. update reviste set nr_exemplare=nr_exemplare+100 where cod=:x. e.

localitatea de plecare cu numar maxim de abonamente. c. r. select * from atestat where tema= grafuri . . d. q. n. Afi?a?i pe ecran toate atestatele a caror tema contine cuvantul grafuri . count(loc_sosire) from abonamente where loc _sosire= roman group by loc_sosire. d. select * from atestat where nota=(select max(nota) from atest at) and coordonator=:x. numarul abonamentelor cu sosire in Roman. update abonamente set pret=pret +(0. grupate dupa coordonator. o. Afi?a?i atestatele coordonate de profesorul X care au obtinut cea mai mare nota (X se citeste de la tastatura). Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. select * from atestat where an= 2010 group by coordonator. select count(*) from atestat group by coordonator. c. Rezolvare: b. Afisati numarul de atestate coordonate de fiecare profesor. e. TEMA. AN.05 * pret) where cod=:x. . select * from abonamente where loc_plecare= bicaz . i.   Se considera tabela ATESTAT cu structura: Afi?a?i temele de atestat din anul 2010. Eliminati din tabela atestatele sustinute in anul 2005 care au obtinut not a sub 7. 39. e. NOTA m. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. pentru un cod introdus de la tastatura actualizati articolul corespunzator marind pretul cu 5%. select * from abonamente order by data_plecare. lista curselor cu plecare din Bicaz. lista curselor sortate cronologic.g. Rezolvare: b. COORDONATOR. h. p. select loc_sosire. l. NUME. select max(count(loc_plecare)) from abonamente group by loc_pl ecare. j. f.

Stergerea din baza de date a produselor furnizorului introdus de la tastat ura. a. ADRESA. c. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. NR_COPII. Care este numarul produselor achizitionate de la fiecare furnizor. Lista persoanelor care sunt nascute in luna noiembrie.nume. select * from agenda group by adresa. Rezolvare: b.f. e. Se considera tabela PAPETARIE cu structura: ID_PRODUS. d. 40. NUME. d. a. Lista furnizorilor de produse din Papetarie. e. b. select * from agenda where nr_copii=(select nr_copii from agenda whe re nume=:x) f. DATA_NASTERE. Sa se stearga produsul / produsele cu pret minim. delete from atestat where an= 2005 and nota<= 7 . b. select * from papetarie where nr_exemplare=(select max(nr_exemplare) fr . Sa se afiseze lista persoanelor care locuiesc in judetul Neamt (prefix 023 3)si nu au adresa de email. EMAIL. Afisati persoanele care au acelasi numar de copii cu persoana cu numele X (X citit de la tastatura). FURNIZOR. PRENUME. 41. select * from agenda where data_nastere= d. Sa se afiseze persoanele care au un singur copil si locuiesc in orasul X i ntrodus de la tastatura. NUME_PRODUS. select * from agenda where adresa= neamt and email is NULL. c. Lista persoanelor din agenda pe orase si pentru acelasi oras alfabetic dup a nume. TELEFON. c. Care este produsul care se gaseste in stoc in cantitate maxima. NR_EXEMPLARE. PRET. select * from agenda where nr_copii= 1 and adresa=:x. Se considera tabela AGENDA cu structura: ID_AGENDA. f. e. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Rezolvare: b. f.

Sa se afiseze apartamentele decomandate care au suprafata cuprinsa intre d oua valori introduse de la tastatura. d. c. Lista elevilor in ordinea descrescatoare a mediilor si la medii egale alph abetic Rezolvare: b. select furnizor from papetarie. Se considera tabela CLASE cu structura: CNP. c. Sa se afiseze elevii care au media mai mare decat media maxima a elevilor dintr-o localitate data de la tastatura. b. Se considera tabela IMOBILIARA cu structura: ID_LOC. f. . 43. d. EMAIL. SUPRAFATA. select count(*) from clase group by localitate. f. a. d. delete from papetarie where pret=(select min(pret) from papetarie). 42. Sa se afiseze numarul de elevi din fiecare localitate. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. delete from papetarie where furnizor=:X. ETAJ. nume. a. select count(nume_produs) from papetarie group by furnizor. select nume from clase where media>(select max(medie) from clase wher e localitate=:x). Sa se afiseze care sunt tipurile de apartamente din tabela. b. PRENUME. select * from clase where localitate<>:x. TIP. MEDIE. e. c. d. LOCALITATE. month )= septembrie . f. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. e.om papetarie). e. NUME. c. Sa se afiseze elevii care nu locuiesc intr-un oras introdus de la tastatur Care sunt elevii care au ziua de nastere in luna curenta. Sa se afiseze structura apartamentelor situate la etajul 1. a. select * from clase order by medie desc. NR_CAMERE. DATA_NASTERE. select nume from clase where to_char(data_n. PRET.

a. Lista produselor pentru care termenul de valabilitate expira peste 2 luni. suprafata. select * from imobiliara order by pret desc. select * from farmacie order by pret. d. select stoc from farmacie where id_produs=:x. FURNIZOR. Sa se afiseze ofertele de apartamente in ordinea descrescatoare a preturil Rezolvare: b. or. f. c. 44. furnizori from farmacie group by furnizor. TITLU. DATA_EXPIRARE. Care cantitatea existenta in stoc pentru un medicament introdus de la tast atura. c. d. select * from imobiliara group by tip. f. NR_EXEMPLARE. and data_expirare e. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Cantitatea de produse in stoc pe furnizori. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Sa se afiseze produsele alfabetic si pentru acelasi produs crescator in fu nctie de pret. . select * from farmacie where stoc=(select max(stoc) from farmacie). e. AN_ACHIZITIE. b. f.e. Sa se stearga din tabela articolele care au pretul minim si 2 camere. Se considera tabela CARTI cu structura: AUTOR. 45. f. STOC. PRET. Se considera tabela FARMACIE cu structura: ID_PRODUS. select * from farmacie where data_expirare > 30-04-2010 < 01-06-2010 . delete from imobiliara where pret=(select min(pret) from imobiliara) and nr_camere= 2 . Care sunt produsele in cantitate maxima in stoc. EDITURA. c. a. e. Rezolvare: b. select sum(stoc). tip. pret from imobiliara where etaj= 1 . d. select nr_camere. select * from imobiliara where suprafata>:x and suprafata<:z.

PRENUME. nume. 3 . d. Autorii si titlul lucrarilor cu numar maxim de exemplare in tabela. e. select autor. f. TELEFON. Sa se afiseze numele si prenumele clientilor care au prefixul telefonic 023 Care sunt clientii care nu au adresa de email in tabela. a. EMAIL. select titlu from carti order by autor desc. PRENUME. e. 46. select oras from clienti: c. Se considera tabela LOCATARI cu structura 0233% . select count(editura). Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. d. Lista clientilor pe orase si in acelasi oras alfabetic dupa nume. b. APARTAMENT. select * from clienti where email is NULL. c. ORAS. editura from carti group by editura. f. NUME. select count(nume) from clienti where oras=:x. Care este numarul clientilor dintr-un oras dat de la tastatura. c.b. ADRESA. TAXA_LIFT   . Lista cartilor alfabetic pe autori si pentru acelasi autor descrescator du pa numarul de exemplare. c. nr_exemplare. f. select autor. f. prenume from clienti where telefon li e e. NUME. Lista lucrarilor achizitionate intre 1990 si 2009. Care sunt orasele in care locuiesc clientii din tabela. Care sunt editurile la care au fost publicate cartile achizitionate. select editura from carti group by editura. select nume. titlu from carti where an>= 1990 and an<= 2009 . Rezolvare: b. Se considera tabela CLIENTI cu structura: ID_CLIENT. Rezolvare: b. d. Care sunt numarul de titluri publicate de fiecare editura. RESTANTA. from carti where nr_exemplare=(select max(nr_exempl are) from carti). select * from clienti order by oras. d. 47. titlu. e.

select * from locatari where taxa is null and rownum<6. b. select numar_statie. d. MEMORIE. f. Rezolvare: b.update locatari set restanta=(select rest from locatari where n=:x) where n ume=:y. e. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. select sum(restanta) from locatari e. . c. d. frecventa from laborator where procesor='In tel' and frecventa>1000 c. procesor. d. Rezolvare: b.a. select count(*) from laborator group by procesor. select sum(valoare) from laborator . f. FRECVENTA. select * from locatari where restanta is not null. update locatari set nume='ion'. Locatarul de la apartamentul X are aceeasi restanta cu locatarul de la apa rtamentul Y. prenume='ciucu' . restanta='7'. f. d. Afi?a?i pe ecran calculatoarele dotate cu procesor Intel cu frecventa mai mare de 1000 Mhz (se va afi?a numarul sta?iei. c. delete from laborator where memorie<='128'. ?terge?i sta?iile cu memoria RAM mai mica sau egala cu 128 MB Cate sta?ii sunt prevazute cu unitate de DVD? Determina?i valoarea totala de inventar a sta?iilor. taxa_lift= '8' where apartament='11'. Y citite de la tastatura) f. select count(*) from laborator where dvd is not null. Afisati numarul statiilor pentru fiecare tip de procesor. Afi?a?i locatarii primelor 5 apartamente care nu platesc taxa de lift. VALOARE a. modelul procesorului si frecvent a) c. Actualizati tabela. DVD. b. Inlocui?i in baza de date datele locatarului de la apartamentul 11 cu date le noului proprietar. PROCESOR. (X. e. Se considera tabela LABORATOR cu structura NUMAR_STATIE. 48. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Determina?i valoarea totala a restantelor de plata e. Afi?a?i pe ecran locatarii cu restante de plata.

combinat. Sa se afiseze codul atelierului din tabela cu cei mai multi muncitori. de tip grila care se pot da elevilor de clasa a IX-a. DISCIPLINA. CLASA. PROFIL. . grila. e. f. Sa se afiseze numarul atelierelor din tabela. . b. c Afi?a?i testele de la profilul Matematica-informatica.cod_atelier from muncitori group by cod_atelier f) select cod_atelier from muncitori group by cod_atelier having sum(nr_piese)=( select max(sum(nr_piese)) from muncitori group by cod_atelier) 50. Sa se afiseze numarul de piese produse de fiecare atelier. c. Rezolvare: b. select count(*) from muncitori c. e Componentele calculatorului la 40 min si tipul a Afisati disciplina / disciplinele cu cele mai multe teste. Muncitorul cu numele X (dat de la tastatura) se pensioneaza. DURATA Tipul poate fi: clasic. d. d Modifica?i durata testului cestuia in test grila. Se considera tabela MUNCITORI cu structura NUME. TIP.49. grupate alfabetic p e discipline si descrescator dupa durata testului. select cod_atelier. indiferent de profil. NR_PIESE a. Eliminati-l d in tabela. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. Sa se creeze tabela si sa se introduca 10 articole care sa corespunda ceri ntelor urmatoare. COD_ATELIER. Se considera tabela TESTE cu structura: DENUMIRE.count(*) from muncitori group by cod_atelier having cou nt(*) =(select max(count(*)) from muncitori d) delete from muncitori where nume=:X e) select sum(nr_piese). Sa se afiseze atelierul / atelierele cu cele mai multe piese produse. b ?terge?i din baza de date testele cu durata mai mare de 60 minute. a Afi?a?i pe ecran denumirile testelor de la disciplina Informatica.

tip='grila' where denumire='componentele calcula torului' e) select disciplina.count(*) from teste group by disciplina having count(*)=(se lect max(count(*)) from teste group by disciplina) .b) select denumire from teste where disciplina='informatica' and tip='grila' and clasa='a9a' c) delete from teste where durata>'80' d) update teste set durata='40'.