logo



Problema 21

Evidența comenzilor unei firme de vânzări se realizează prin intermediul unei baze de date ce cuprinde tabelul Comenzi cu structura Id_comanda (N,6), Client (T,80), Valoare (N,6.2), Adresa_livrare (T,80), Data_livrare (D).
Cerinţe:
a) Creaţi structura tabelului Comenzi;
b) Introduceți următoarele înregistrări în tabel:

Id_comanda

Client

Valoare

Adresa_livrare

Data_livrare

5364

Radoi Bogdan

349.90

Craiova

22.dec.2016

5332

SC Dragfer SRL

167.80

Bucuresti

14.nov.2016

5245

Turcu Raluca

65.50

Pitesti

12.dec.2016

5661

Bucur Georgeta

1699.90

Bucuresti

29.nov.2016

5688

Radu Ana-Maria

390.00

Slatina

03.dec.2016

5705

Stoian Alexandru

55.00

Pitesti

21.dec.2016

c) Afişaţi comenzile care au o valoare mai mare de 200;
d) Folosind o interogare (secvenţă de instrucţiuni), reduceţi cu 7% valoarea comenzilor care au data de livrare luna decembrie 2016.

Rezolvare:

# a)

CREATE TABLE Comenzi (
    Id_comanda INT(6),
    Client VARCHAR(80),
    Valoare DECIMAL(6,2),
    Adresa_livrare VARCHAR(80),
    Data_livrare DATE
);

# b)

INSERT INTO Comenzi (Id_comanda, Client, Valoare, Adresa_livrare, Data_livrare)
VALUES
(5364, 'Radoi Bogdan', 349.90, 'Craiova', '2016-12-22'),
(5332, 'SC Dragfer SRL', 167.80, 'Bucuresti', '2016-11-14'),
(5245, 'Turcu Raluca', 65.50, 'Pitesti', '2016-12-12'),
(5661, 'Bucur Georgeta', 1699.90, 'Bucuresti', '2016-11-29'),
(5688, 'Radu Ana-Maria', 390.00, 'Slatina', '2016-12-03'),
(5705, 'Stoian Alexandru', 55.00, 'Pitesti', '2016-12-21');

SELECT * from Comenzi;

# c)

SELECT * 
FROM Comenzi 
WHERE Valoare > 200;
    
# d)

UPDATE Comenzi 
SET Valoare = Valoare * 0.93
WHERE MONTH(Data_livrare) = 12 AND YEAR(Data_livrare) = 2016;

SELECT * from Comenzi;

 

 



Copyright © 2016 Kalytheo