logo



Problema 34

Evidența activităţii unei firme de evenimente se realizează prin intermediul unei baze de date ce cuprinde tabelul Melodii cu structura Id_melodie (N,4), Titlu (T,100), Artist (T,100), Durata (N,3), Data_aparitie (D). Durata melodiei este exprimată în secunde.
Cerinţe:
a) Creaţi structura tabelului Melodii;
b) Introduceți următoarele înregistrări în tabel:

Id_melodie

Titlu

Artist

Durata

Data_aparitie

1254

Desert rose

Sting

286

24.sep.1999

1043

House of rising sun

Deep Purple

230

12.ian.1973

1067

Every breath you take

Sting

253

01.iun.1983

1198

Left outside alone

Anastacia

233

15.mar.2004

1233

Child in time

Deep Purple

614

03.iun.1970

1022

Nothing else matters

Metallica

389

02.aug.1991

c) Afişaţi melodiile anilor 90 (perioada 01.ian.1990-31.dec.1999), ordonate crescător după numele artistului;
d) Folosind o interogare (secvenţă de instrucţiuni), ştergeţi melodiile artistului (formaţiei) „Deep Purple”.

Rezolvare:

# a)

CREATE TABLE Melodii (
    Id_melodie INT(4),
    Titlu VARCHAR(100),
    Artist VARCHAR(100),
    Durata INT(3),
    Data_aparitie DATE
);

# b)

INSERT INTO Melodii (Id_melodie, Titlu, Artist, Durata, Data_aparitie) VALUES
(1254, 'Desert rose', 'Sting', 286, '1999-09-24'),
(1043, 'House of rising sun', 'Deep Purple', 230, '1973-01-12'),
(1067, 'Every breath you take', 'Sting', 253, '1983-06-01'),
(1198, 'Left outside alone', 'Anastacia', 233, '2004-03-15'),
(1233, 'Child in time', 'Deep Purple', 614, '1970-06-03'),
(1022, 'Nothing else matters', 'Metallica', 389, '1991-08-02');

/*Observație: Data_aparitie este introdusă în format YYYY-MM-DD, format standard pentru DATE în MySQL.*/

SELECT * from Melodii;

# c)

SELECT * FROM Melodii
WHERE Data_aparitie BETWEEN '1990-01-01' AND '1999-12-31'
ORDER BY Artist ASC;    
    
# d)

DELETE FROM Melodii
WHERE Artist = 'Deep Purple';

SELECT * from Melodii;

 

 



Copyright © 2016 Kalytheo