logo



Problema 8

Datele meteo din Romania sunt stocate în tabelul Date_meteo cu structura: Id_inreg (N,9), Data (D), Temp_min (N, 4.2), Temp_max (N, 4.2), Localitate (T, 50), ID_Judet (T, 2), unde Temp_min respectiv Temp_max  reprezintă temperatura minimă respectiv temperatura maximă înregistrată într-o zi, în respectiva localitate.
Cerințe:
a) Creați structura tabelului Date_meteo;
b) Introduceți următoarele înregistrări în tabelul Date_meteo:

Id_inreg

Data

Temp_min

Temp_max

Localitate

ID_Judet

3421

03.mai.2011

12

27

Craiova

DJ

5412

08.mai.2011

7

23

Brasov

BV

5632

12.mai.2011

10

19

Sibiu

SB

6221

09.iun.2012

17

31

Craiova

DJ

7645

16.iun.2012

13

26

Buzau

BZ

8677

22.iun.2012

18

28

Brasov

BV

c) Afişați data în care s-a înregistrat temperatura minimă pentru județul având id-ul BV;
d) Afişaţi media temperaturilor maxime din România înregistrate în luna mai 2011.

Rezolvare:

# a)

CREATE TABLE Date_meteo (
    Id_inreg INT(9) PRIMARY KEY,
    Data DATE,
    Temp_min DECIMAL(4,2),
    Temp_max DECIMAL(4,2),
    Localitate VARCHAR(50),
    ID_Judet CHAR(2)
);

# b)

INSERT INTO Date_meteo (Id_inreg, Data, Temp_min, Temp_max, Localitate, ID_Judet) VALUES
(3421, STR_TO_DATE('03.05.2011', '%d.%m.%Y'), 12, 27, 'Craiova', 'DJ'),
(5412, STR_TO_DATE('08.05.2011', '%d.%m.%Y'), 7, 23, 'Brasov', 'BV'),
(5632, STR_TO_DATE('12.05.2011', '%d.%m.%Y'), 10, 19, 'Sibiu', 'SB'),
(6221, STR_TO_DATE('09.06.2012', '%d.%m.%Y'), 17, 31, 'Craiova', 'DJ'),
(7645, STR_TO_DATE('16.06.2012', '%d.%m.%Y'), 13, 26, 'Buzau', 'BZ'),
(8677, STR_TO_DATE('22.06.2012', '%d.%m.%Y'), 18, 28, 'Brasov', 'BV');

SELECT * from Date_meteo;

# c)

SELECT Data
FROM Date_meteo
WHERE ID_Judet = 'BV'
ORDER BY Temp_min ASC
LIMIT 1;
    
# d)

SELECT AVG(Temp_max) AS Media_Temp_Max
FROM Date_meteo
WHERE MONTH(Data) = 5 AND YEAR(Data) = 2011;

 

 



Copyright © 2016 Kalytheo