sexta-feira, 4 de outubro de 2019

Ficha de trabalho de SI M3-M5


CREATE TABLE pacientes (
                idPaciente int PRIMARY KEY,
                nome varchar (100),
                endereco varchar (100)
);

CREATE TABLE medicos (
                idMedico int PRIMARY KEY,
                nome varchar(100),
                endereco varchar (100)
);

CREATE TABLE patologias (
                idPatologia int PRIMARY KEY,
                designacao varchar(100)
);

CREATE TABLE marcacoes (
                idMarcacao int PRIMARY KEY,
                data date,
                sala int,
                idMedico varchar(100),
                idPaciente varchar(100)
);

CREATE TABLE diagnosticos (
                idPatologia int,
                idMarcacao int,
                PRIMARY KEY (idPatologia, idMarcacao)
);

INSERT INTO medicos VALUES ('99030', 'Afonso Cordeiro', 'Hospital da CUF Gaia');
INSERT INTO medicos VALUES ('12312', 'Luis Vieira', 'Hospital da Arrabida');
INSERT INTO medicos VALUES ('43642', 'Fernanda Almeida', 'Hospital Santos Silva'); 
INSERT INTO pacientes VALUES ('12345', 'Alexandre Xavier', 'Rua Pedro Mota');
INSERT INTO pacientes VALUES ('45643', 'Tatiana Barbier', 'Rua Luis de Camoes');
INSERT INTO pacientes VALUES ('23613', 'Amélia Soares', 'Av República');
INSERT INTO pacientes VALUES ('74927', 'Catarina Ferreira', 'Rua 33 Espinho'); 
INSERT INTO marcacoes VALUES (456, '2007-01-01', 190, '99030', '12345');
INSERT INTO marcacoes VALUES (457, '2007-01-01', 187, '99030', '12345');
INSERT INTO marcacoes VALUES (458, '2007-01-01', 190, '12312', '23613');
INSERT INTO marcacoes VALUES (459, '2007-01-01', 190, '99030', '45643');
INSERT INTO marcacoes VALUES (460, '2007-01-01', 187, '99030', '45643');
INSERT INTO marcacoes VALUES (461, '2007-01-01', 187, '12312', '12345');
INSERT INTO marcacoes VALUES (462, '2007-01-01', 204, '12312', '23613');
INSERT INTO marcacoes VALUES (463, '2007-01-01', 187, '99030', '45643');
INSERT INTO marcacoes VALUES (464, '2007-01-02', 190, '12312', '12345');
INSERT INTO marcacoes VALUES (465, '2007-01-02', 190, '12312', '45643');
INSERT INTO marcacoes VALUES (466, '2007-01-03', 190, '43642', '12345');
INSERT INTO marcacoes VALUES (467, '2007-01-03', 190, '99030', '12345');
INSERT INTO marcacoes VALUES (468, '2007-01-03', 190, '43642', '74927'); 
INSERT INTO patologias VALUES (1, 'Depressão');
INSERT INTO patologias VALUES (2, 'Hipertensão');
INSERT INTO patologias VALUES (3, 'Diabetes'); 
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (456, 1);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (456, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (457, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (457, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (458, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (459, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (460, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (460, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (460, 1);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (461, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (462, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (463, 1);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (464, 2);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (464, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (465, 1);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (466, 3);
INSERT INTO diagnosticos (idMarcacao, idPatologia) VALUES (467, 2); 

-- 1) Apresente os médicos que trabalham na clínica (nome) 

-- 2) Apresente o nome e o endereço de todos os pacientes (nome, endereco)

-- 3) Apresente as datas de todas as marcacoes do paciente 12345 (data)

-- 4) Apresente as patologias e ordene-as de modo ascendente (designacao)

-- 5) Liste os pacientes vistos a 2007-01-01 (idPaciente, nome)

-- 6) Liste as patologias diagnosticadas na marcação idMarcacao  456? (designacao)

-- 7) Quantas marcações ocorreram a 2007-01-01?

-- 8) Quantas vezes foi usada cada sala? (sala, idSala AS total)

-- 9) Quantas vezes foi cada sala utilizada pelo idMedico 99030?  (sala, sala AS total)

-- 10) Quantas vezes foi cada sala utilizada pelo medico Afonso Cordeiro? (sala, idSala AS total)

-- 11) Quais salas foram usadas mais de duas vezes em 2007-01-01? (sala)

-- 12) Quais foram as 3 salas mais usadas no mesmo dia? (sala)

-- 13) Que patalogias foram diagnosticadas ao paciente 12345? (designacao)

-- 14) What pacientess have been diagnosticos patologias that have also been diagnosticos for pacientes 12345? (nome)

Sem comentários:

Enviar um comentário