Sunteți pe pagina 1din 7

1) Ce produse sunt mai scumpe dec�t p�nza rosie?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE pret > (SELECT pret
4 FROM prod
5 WHERE den = 'panza'
6 AND culoare = 'rosu');

DEN CULOARE
---------- ----------
panza alb
tapet alb
tapet galben
panza galben

2) Ce culori de tapet sunt mai ieftine dec�t cel alb?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE den = 'tapet'
4 AND pret < (SELECT pret
5 FROM prod
6 WHERE culoare = 'alb'
7 AND den = 'tapet' );

DEN CULOARE
---------- ----------
tapet galben

3) Ce clienti sunt din aceeasi localitate cu Ionescu?

SQL> SELECT nume, loc


2 FROM client
3 WHERE loc = (SELECT loc
4 FROM client
5 WHERE nume = 'Ionescu' );

NUME LOC
--------------- ---------------
Ionescu Galati
Marin Galati
Vasile Galati

4) Care este numele clientilor care au cumparat p�nza verde?

SQL> SELECT nume


2 FROM client
3 WHERE codcli IN (SELECT codcli
4 FROM vanzare
5 WHERE codp = (SELECT codp
6 FROM prod
7 WHERE den = 'panza'
8 AND culoare = 'verde'));

NUME
---------------
Ionescu
Popescu
Vasile

5) Care este numele clientilor care nu au cumparat p�nza verde?

SQL> SELECT nume


2 FROM client
3 WHERE codcli NOT IN (SELECT codcli
4 FROM vanzare
5 WHERE codp = (SELECT codp
6 FROM prod
7 WHERE den = 'panza'
8 AND culoare = 'verde'));

NUME
---------------
Marin
Soare

6) Care este denumirea produselor cumparate de Ionescu?

SQL> SELECT den


2 FROM prod
3 WHERE codp IN (SELECT codp
4 FROM vanzare
5 WHERE codcli = (SELECT codcli
6 FROM client
7 WHERE nume = 'Ionescu'));

DEN
----------
panza
vopsea

7) Care este denumirea produselor din care nu a cumparat Ionescu?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp NOT IN (SELECT codp
4 FROM vanzare
5 WHERE codcli = (SELECT codcli
6 FROM client
7 WHERE nume = 'Ionescu'));

DEN CULOARE
---------- ----------
panza rosu
panza alb
tapet alb
vopsea alb
tapet galben
panza galben
adeziv alb

8) Care este denumirea produselor cumparate de Ionescu si din care nu a cumparat


Popescu?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp IN (SELECT codp
4 FROM vanzare
5 WHERE codcli = (SELECT codcli
6 FROM client
7 WHERE nume = 'Ionescu')
8 )
9 AND codp NOT IN (SELECT codp
10 FROM vanzare
11 WHERE codcli = (SELECT codcli
12 FROM client
13 WHERE nume = 'Popescu')
14 );

DEN CULOARE
---------- ----------
vopsea rosu

9) Care este denumirea produselor din care a cumparat si Ionescu si Popescu?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp IN (SELECT codp
4 FROM vanzare
5 WHERE codcli = (SELECT codcli
6 FROM client
7 WHERE nume = 'Ionescu')
8 )
9 AND codp IN (SELECT codp
10 FROM vanzare
11 WHERE codcli = (SELECT codcli
12 FROM client
13 WHERE nume = 'Popescu')
14 );

DEN CULOARE
---------- ----------
panza verde

10) Care este numele clientilor care au cumparat p�nza verde si nu au cumparat
p�nza rosie?

SQL> SELECT nume


2 FROM client
3 WHERE codcli IN (SELECT codcli
4 FROM vanzare
5 WHERE codp = (SELECT codp
6 FROM prod
7 WHERE den = 'panza'
8 AND culoare = 'verde')
9 )
10 AND codcli NOT IN (SELECT codcli
11 FROM vanzare
12 WHERE codp = (SELECT codp
13 FROM prod
14 WHERE den = 'panza'
15 AND culoare = 'rosu')
16 );
NUME
---------------
Ionescu

11) Care sunt clientii care au cumparat si p�nza verde si p�nza rosie?

SQL> SELECT nume


2 FROM client
3 WHERE codcli IN (SELECT codcli
4 FROM vanzare
5 WHERE codp = (SELECT codp
6 FROM prod
7 WHERE den = 'panza'
8 AND culoare = 'verde')
9 )
10 AND codcli IN (SELECT codcli
11 FROM vanzare
12 WHERE codp = (SELECT codp
13 FROM prod
14 WHERE den = 'panza'
15 AND culoare = 'rosu')
16 );

NUME
---------------
Vasile
Popescu

12) Care sunt produsele din care nu s-a v�ndut nimic?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp NOT IN (SELECT codp
4 FROM vanzare);

DEN CULOARE
---------- ----------
tapet alb
vopsea alb
tapet galben
panza galben
adeziv alb

13) Care sunt clientii care nu au cumparat nimic?

SQL> SELECT nume


2 FROM client
3 WHERE codcli NOT IN (SELECT codcli
4 FROM vanzare);

NUME
---------------
Soare

14) Care este produsul cel mai ieftin?

SQL> SELECT den, culoare, pret


2 FROM prod
3 WHERE pret = (SELECT MIN(pret)
4 FROM prod);

DEN CULOARE PRET


---------- ---------- ----------
panza verde 75

15) Care este produsul cel mai v�ndut azi (10-JUN-03)? (cantitatea cea mai mare)

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp = (SELECT codp
4 FROM vanzare
5 WHERE cant = (SELECT MAX(cant)
6 FROM vanzare
7 WHERE datav = '10-JUN-03'
8 )
9 AND datav = '10-JUN-03'
10 );

DEN CULOARE
---------- ----------
panza rosu

16) Care este produsul cel mai v�ndut? (cantitatea totala cea mai mare)?

SQL> SELECT den, culoare


2 FROM prod
3 WHERE codp = (SELECT codp
4 FROM vanzare
5 GROUP BY codp
6 HAVING SUM(cant) = (SELECT MAX(SUM(cant))
7 FROM vanzare
8 GROUP BY codp
9 )
10 );

DEN CULOARE
---------- ----------
panza verde

C. Formulati urmatoarele interogari in SQL, in cel putin 2 variante:

1) Ce pret are p�nza cumparata de Ionescu din Galati?

SQL> SELECT den, pret


2 FROM prod
3 WHERE den = 'panza'
4 AND codp IN (SELECT codp
5 FROM vanzare
6 WHERE codcli = (SELECT codcli
7 FROM client
8 WHERE nume = 'Ionescu'
9 AND loc = 'Galati')
10 );

DEN PRET
---------- ----------
panza 75

SQL> SELECT den ,culoare , pret


2 FROM prod, vanzare, client
3 WHERE prod.codp = vanzare.codp
4 AND vanzare.codcli = client.codcli
5 AND den = 'panza'
6 AND nume = 'Ionescu'
7 AND loc = 'Galati';

DEN CULOARE PRET


---------- ---------- ----------
panza verde 75

2) Care este adresa clientilor care au cumparat p�nza verde?

SQL> SELECT nume, loc


2 FROM client
3 WHERE codcli IN (SELECT codcli
4 FROM vanzare
5 WHERE codp = (SELECT codp
6 FROM prod
7 WHERE den = 'panza'
8 AND culoare = 'verde'
9 )
10 );

NUME LOC
--------------- ---------------
Ionescu Galati
Popescu Iasi
Vasile Galati

SQL> SELECT nume, loc


2 FROM prod, vanzare, client
3 WHERE prod.codp = vanzare.codp
4 AND vanzare.codcli = client.codcli
5 AND den = 'panza'
6 AND culoare = 'verde';

NUME LOC
--------------- ---------------
Popescu Iasi
Ionescu Galati
Vasile Galati

3) In ce zile s-a v�ndut p�nza verde clientilor din Galati?

SQL> SELECT datav


2 FROM vanzare
3 WHERE codcli IN (SELECT codcli
4 FROM client
5 WHERE loc = 'Galati')
6 AND codp = (SELECT codp
7 FROM prod
8 WHERE den = 'panza'
9 AND culoare = 'verde'
10 );

DATAV
---------
10-JUN-03
08-JUN-03

SQL> SELECT datav


2 FROM prod, vanzare, client
3 WHERE prod.codp = vanzare.codp
4 AND vanzare.codcli = client.codcli
5 AND den = 'panza'
6 AND culoare = 'verde'
7 AND loc = 'Galati';

DATAV
---------
10-JUN-03
08-JUN-03

S-ar putea să vă placă și