logo



Problema 19

Evidența abonaţilor unei săli de aerobic se realizează prin intermediul unei baze de date ce cuprinde tabelul Abonati cu structura Cod_abonat (T,2), Nume_abonat (T,80), Pret_abonament (N,5.2), Tip_abonament (T,15), Data_expirare (D).
Cerinţe:
a) Creaţi structura tabelului Abonati;
b) Introduceți următoarele înregistrări în tabel:

Cod_abonat

Nume_abonat

Pret_abonament

Tip_abonament

Data_expirare

14

Oprea Virginia

88

Light

27.iul.2015

32

Negrea Raluca

88

Light

11.aug.2015

71

Dragnea Mircea

129

Hard

05.aug.2015

24

Fodor Dana

105

Medium

17.iul.2015

45

Boanta Irinel

105

Medium

21.aug.2015

17

Cerbu Simina

79

Light

10.iul.2015

c) Afişaţi abonaţii care au optat pentru tipul de abonament Light;
d) Folosind o interogare (secvenţă de instrucţiuni), efectuaţi o reducere de 9 lei pentru abonaţii al căror abonament expiră în luna august 2015.

Rezolvare:

# a)

CREATE TABLE Abonati (
    Cod_abonat CHAR(2),
    Nume_abonat VARCHAR(80),
    Pret_abonament DECIMAL(5,2),
    Tip_abonament VARCHAR(15),
    Data_expirare DATE
);

# b)

INSERT INTO Abonati (Cod_abonat, Nume_abonat, Pret_abonament, Tip_abonament, Data_expirare)
VALUES
('14', 'Oprea Virginia', 88.00, 'Light', '2015-07-27'),
('32', 'Negrea Raluca', 88.00, 'Light', '2015-08-11'),
('71', 'Dragnea Mircea', 129.00, 'Hard', '2015-08-05'),
('24', 'Fodor Dana', 105.00, 'Medium', '2015-07-17'),
('45', 'Boanta Irinel', 105.00, 'Medium', '2015-08-21'),
('17', 'Cerbu Simina', 79.00, 'Light', '2015-07-10');

SELECT * from Abonati;

# c)

SELECT * 
FROM Abonati 
WHERE Tip_abonament = 'Light';
    
# d)

UPDATE Abonati
SET Pret_abonament = Pret_abonament - 9
WHERE MONTH(Data_expirare) = 8 AND YEAR(Data_expirare) = 2015;

SELECT * from Abonati;

 

 



Copyright © 2016 Kalytheo