![]() |
|
|
|
|
Problema 3Situaţia consultațiilor medicilor de familie se realizează prin intermediul unei baze de date cu mai multe tablele. Tabelul Consultatii are următoarea structură Id (N,9), Data (D), Diagnostic (T,200), Tratament (T,250), Cod_parafa_medic (N,8), Nr_carnet_pacient (N,10).
Rezolvare:
# a)
CREATE TABLE Consultatii (
Id INT(9) NOT NULL PRIMARY KEY,
Data DATE,
Diagnostic VARCHAR(200),
Tratament VARCHAR(250),
Cod_parafa_medic INT(8),
Nr_carnet_pacient INT(10)
);
# b)
#Trebuie să convertim datele din formatul 12.ian.2014 în formatul MySQL YYYY-MM-DD:
INSERT INTO Consultatii (Id, Data, Diagnostic, Tratament, Cod_parafa_medic, Nr_carnet_pacient) VALUES
(7, '2014-01-12', 'Gripa', 'Reteta…', 9813, 4556),
(18, '2014-03-21', 'Contuzie', 'Trimitere…', 6733, 23567),
(9, '2013-12-07', 'Gripa', 'Reteta…', 9813, 23567),
(16, '2014-01-11', 'Arsura', 'Reteta…', 9813, 21224),
(21, '2014-03-23', 'Gripa', 'Trimitere…', 6733, 8975),
(19, '2014-03-08', 'Gripa', 'Reteta…', 9813, 4556);
SELECT * from Consultatii;
# c)
SELECT *
FROM Consultatii
WHERE
Cod_parafa_medic = 9813 AND
MONTH(Data) = 1 AND
YEAR(Data) = 2014;
# d)
/* Notă: Dacă un pacient apare de mai multe ori, dar te interesează numărul total de consultații, folosești COUNT(*).
Dacă vrei numărul de pacienți distincți, folosești COUNT(DISTINCT ...).*/
# Număr total de consultații cu gripă în martie 2014:
SELECT COUNT(*) AS Nr_consultatii_gripa_martie
FROM Consultatii
WHERE
Diagnostic = 'Gripa' AND
MONTH(Data) = 3 AND
YEAR(Data) = 2014;
# Număr distinct de pacienți cu gripă în martie 2014:
SELECT COUNT(DISTINCT Nr_carnet_pacient) AS Nr_pacienti_gripa_martie
FROM Consultatii
WHERE
Diagnostic = 'Gripa' AND
MONTH(Data) = 3 AND
YEAR(Data) = 2014;
|
|
||||||||||||||||||||||||||||||||||||||||||
Copyright © 2016 Kalytheo