Teste si Probleme SQL
Scris: Mie Oct 10, 2012
Am o lista de probleme care mi se par greoaie, problema e ca nu am voie sa le rezolv decat cu SQL, nu am voie sa folosesc alt limbaj ca PHP sau altceva.
Baza de date are structura:
Enunturi:
Scrieţi interogări pentru a determina:
1. Produsele furnizate de toţi furnizorii ce furnizează cel puţin un produs de tip 'A' vreunei secţii( un astfel de produs să fie furnizat de TOŢI furnizorii cu proprietatea de mai sus ).
2. Produsele furnizate de toţi furnizorii ce furnizează toate produsele de tip 'A'( în lista produselor furnizate de fiecare dintre aceşti furnizori se află toate produsele de tip ‘A’ iar produsele care trebuie determinate sînt acele produse care sint furnizate de FIECARE astfel de furnizor ).
3. Perechile <furnizor, secţie> pentru care acea secţie vinde toate produsele furnizate ei de acel furnizor( orice produs care îi este furnizat de acel furnizor apare în lista ei de vînzări ).
4. Produsele furnizate de toţi furnizorii tuturor secţiilor( un astfel de produs este furnizat de fiecare furnizor fiecărei secţii ).
5. Furnizorii ce furnizează toate produsele de tip 'A' unei aceleiaşi secţii de la etajul 2( pentru un astfel de furnizor există o secţie de la etajul 2 astfel încît in lista produselor furnizate ei de acest furnizor se află toate produsele de tip ‘A’ ).
6. Furnizorii( numele lor ) ce îndeplinesc proprietatea că furnizează cel puţin un produs tuturor secţiilor care îl au ca furnizor pe cel cu identificatorul 1.
7. Secţiile care satisfac proprietatea că fiecare produs furnizat lor este furnizat cel puţin încă unei alte secţii.
8. Produsele furnizate de acei furnizori care furnizează cel puţin un produs fiecărei secţii( trebuie determinate acele produse care apar în lista produselor furnizate de măcar un furnizor cu această proprietate ).
9. Numărul de perechi <furnizor, secţie> cu proprietatea că furnizorul furnizează cel puţin un produs de tip 'A' acelei secţii.
10. Produsele furnizate de toţi furnizorii ce furnizează cel puţin două produse de tipul 'A' ( trebuie determinate acele produse care apar în lista produselor furnizate de TOŢI furnizorii cu această proprietate).
Baza de date are structura:
Cod: Selectaţi tot
CREATE TABLE vanzari (
cods NUMBER(3),
codp NUMBER(3),
cant NUMBER(5) )
/
-- cods cod sectie
-- codp cod produs
-- cant cantitatea vinduta
/
CREATE TABLE sectii (
cods NUMBER(3),
den CHAR(10),
etaj NUMBER(2))
/
-- nomenclatorul de produse
DROP TABLE produse
/
CREATE TABLE produse (
codp NUMBER(3),
den CHAR(20),
tip CHAR(2),
cul CHAR(15),
pret NUMBER(10))
/
-- cul culoare
-- nomenclatorul de furnizori
/
CREATE TABLE furnizori (
codf NUMBER(3),
numef CHAR(20))
/
-- codf cod furnizor
-- numef denumire
-- produsele furnizate de furnizori unei anumite sectii
CREATE TABLE furnizeaza (
codf NUMBER(3),
cods NUMBER(3),
codp NUMBER(3),
cant NUMBER(5))
/
Scrieţi interogări pentru a determina:
1. Produsele furnizate de toţi furnizorii ce furnizează cel puţin un produs de tip 'A' vreunei secţii( un astfel de produs să fie furnizat de TOŢI furnizorii cu proprietatea de mai sus ).
2. Produsele furnizate de toţi furnizorii ce furnizează toate produsele de tip 'A'( în lista produselor furnizate de fiecare dintre aceşti furnizori se află toate produsele de tip ‘A’ iar produsele care trebuie determinate sînt acele produse care sint furnizate de FIECARE astfel de furnizor ).
3. Perechile <furnizor, secţie> pentru care acea secţie vinde toate produsele furnizate ei de acel furnizor( orice produs care îi este furnizat de acel furnizor apare în lista ei de vînzări ).
4. Produsele furnizate de toţi furnizorii tuturor secţiilor( un astfel de produs este furnizat de fiecare furnizor fiecărei secţii ).
5. Furnizorii ce furnizează toate produsele de tip 'A' unei aceleiaşi secţii de la etajul 2( pentru un astfel de furnizor există o secţie de la etajul 2 astfel încît in lista produselor furnizate ei de acest furnizor se află toate produsele de tip ‘A’ ).
6. Furnizorii( numele lor ) ce îndeplinesc proprietatea că furnizează cel puţin un produs tuturor secţiilor care îl au ca furnizor pe cel cu identificatorul 1.
7. Secţiile care satisfac proprietatea că fiecare produs furnizat lor este furnizat cel puţin încă unei alte secţii.
8. Produsele furnizate de acei furnizori care furnizează cel puţin un produs fiecărei secţii( trebuie determinate acele produse care apar în lista produselor furnizate de măcar un furnizor cu această proprietate ).
9. Numărul de perechi <furnizor, secţie> cu proprietatea că furnizorul furnizează cel puţin un produs de tip 'A' acelei secţii.
10. Produsele furnizate de toţi furnizorii ce furnizează cel puţin două produse de tipul 'A' ( trebuie determinate acele produse care apar în lista produselor furnizate de TOŢI furnizorii cu această proprietate).