Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Recapitulare Baze de Date - Limbajul SQL

Informatica


Recapitulare Baze de Date - Limbajul SQL



Se da baza de date :

Se cere sa se rezolve urmatoarele cerinte cu ajutorul limbajului SQL:

1. Sa se afiseze lista furnizorilor din provincie in ordine invers alfabetica.

SELECT CodFurnizor, Denumire, Localitate

FROM Furnizori

WHERE Localitate<>"Bucuresti"

ORDER BY Denumire DESC;

2. Sa se afiseze nr. de furnizori din fiecare localitate.

SELECT Count(*) AS NrFurnizori, Localitate

FROM Furnizori

GROUP BY Localitate;

3. Sa se afiseze furnizorii al caror nume incepe cu litera A

SELECT CodFurnizor, Denumire

FROM Furnizori

WHERE Denumire Like "A*";

4. Sa se afiseze produsele masurate in "KG", cu pret cuprins intre 2000 si 20000

SELECT *

FROM Produse

WHERE UM="KG" AND Pret Between 2000 And 20000;

Sa se afizeze contractele din luna curenta

SELECT *

FROM Contracte

WHERE Month([DataContract])=Month(Date()) And Year([DataContract])=Year(Date(

Sa se afiseze contractele din ultimele 10 zile.

SELECT *

FROM Contracte

WHERE DataContract Between Date()-10 And Date();

7. Sa se afiseze contractele din anul 2007 incheiate cu furnizori din Bucuresti.

SELECT NrContract, DataContract, Denumire

FROM Furnizori INNER JOIN Contracte ON Furnizori.CodFurnizor=Contracte.CodFurnizor

WHERE Year([DataContract])=2007 And Localitate="Bucuresti";

Varianta fara INNER JOIN:

SELECT NrContract, DataContract, Denumire

FROM Furnizori, Contracte

WHERE Furnizori.CodFurnizor=Contracte.CodFurnizor and Year([DataContract])=2007 And Localitate="Bucuresti";

8. Sa se afiseze nr. de contracte incheiate pe fiecare furnizor

SELECT Count(*) AS Nr_Contracte, Denumire

FROM Furnizori, Contracte

WHERE Furnizori.CodFurnizor=Contracte.CodFurnizor

GROUP BY Denumire;

9. Sa se afiseze val. fiecarui contract din ultimele 2 saptamini

SELECT Contracte.NrContract, DataContract, Cantitate*Pret AS Valoare

FROM Contracte, ContractProdus, Produse

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And DataContract

Between Date()-14 And Date();

Sa se afiseze val totala a contractelor incheiate pt un anumit produs solicitat in momentul executiei interogarii!

SELECT Produse.DenProdus, Sum(Cantitate*Pret) AS ValoareTotala

FROM Contracte, ContractProdus, Produse

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And

Produse.DenProdus Tastati Produsul dorit]

GROUP BY Produse.DenProdus;

Sa se afiseze valoarea medie a contractelor pe fiecare furnizor

SELECT Furnizori.Denumire, AVG(Cantitate*Pret) AS ValoareMedie

FROM Contracte, ContractProdus, Produse, Furnizori

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And

Furnizori.CodFurnizor=Contracte.CodFurnizor

GROUP BY Furnizori.Denumire;

Sa se afiseze lista furnizorilor la care val. totala a contractelor este mai mare de 100000

SELECT Furnizori.Denumire, Sum(Cantitate*Pret) AS ValoareMedie

FROM Contracte, ContractProdus, Produse, Furnizori

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And

Furnizori.CodFurnizor=Contracte.CodFurnizor

GROUP BY Furnizori.Denumire

HAVING Sum(Cantitate*Pret)>100000;

Sa se afiseze lista furnizorilor la care valoarea totala a contractelor depaseste valoarea totala a contractelor incheiate de un anumit furnizor (parametrizat)

(interogare cu subinterogare)

SELECT Furnizori.Denumire, Sum(Cantitate*Pret) AS ValoareMedie

FROM Contracte, ContractProdus, Produse, Furnizori

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And

Furnizori.CodFurnizor=Contracte.CodFurnizor

GROUP BY Furnizori.Denumire

HAVING Sum(Cantitate*Pret) >

(SELECT Sum(Cantitate*Pret)

FROM Contracte, ContractProdus, Produse, Furnizori

WHERE Contracte.NrContract=ContractProdus.NrContract And

ContractProdus.CodProdus=Produse.CodProdus And

Furnizori.CodFurnizor=Contracte.CodFurnizor And

Furnizori.Denumire=[Tastati furnizorul dorit]);


Document Info


Accesari: 2236
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )