0 evaluări0% au considerat acest document util (0 voturi)
54 vizualizări2 pagini
El documento describe la creación de una base de datos para un hospital con tablas para doctores, drogas, visitas y prescripciones. Luego se insertan datos de ejemplo en las tablas y se incluyen consultas SQL para listar, actualizar y eliminar datos de la base.
El documento describe la creación de una base de datos para un hospital con tablas para doctores, drogas, visitas y prescripciones. Luego se insertan datos de ejemplo en las tablas y se incluyen consultas SQL para listar, actualizar y eliminar datos de la base.
El documento describe la creación de una base de datos para un hospital con tablas para doctores, drogas, visitas y prescripciones. Luego se insertan datos de ejemplo en las tablas y se incluyen consultas SQL para listar, actualizar y eliminar datos de la base.
----------------------------------------------------- ---------- CARGA DE LA BASE DE DATOS----------------- -----------------------------------------------------
--TABLA DOCTOR INSERT INTO DOCTOR VALUES (1,'Marcelo Holgun',45); INSERT INTO DOCTOR VALUES (2,'Peter Zurita',56); INSERT INTO DOCTOR VALUES (3,'Claudia Vela',45); INSERT INTO DOCTOR VALUES (4,'Paola Arias',31); INSERT INTO DOCTOR VALUES (5,'Edison Morales',63);
---TABLA DROGA INSERT INTO DROGA VALUES (1,'analgesico',23,'adorlan'); INSERT INTO DROGA VALUES (2,'vitamina',7,'complejo B'); INSERT INTO DROGA VALUES (3,'corticoide',6,'inflacor'); INSERT INTO DROGA VALUES (4,'vitamina',34,'jazmin E'); INSERT INTO DROGA VALUES (5,'analgesico',12,'tramadol'); INSERT INTO DROGA VALUES (6,'antibitico',23,'relmex'); INSERT INTO DROGA VALUES (7,'antibitico',45,'ciplox');
--TABLA VISITA INSERT INTO VISITA VALUES (1,1,'2011-12-05'); INSERT INTO VISITA VALUES (2,1,'2011-03-17'); INSERT INTO VISITA VALUES (3,2,'2012-01-03'); INSERT INTO VISITA VALUES (4,3,'2011-09-23'); INSERT INTO VISITA VALUES (5,1,'2011-07-01'); INSERT INTO VISITA VALUES (6,2,'2012-01-12');
---TABLA PRESCRIPCIN INSERT INTO PRESCRIPCION VALUES (1,1); INSERT INTO PRESCRIPCION VALUES (2,1); INSERT INTO PRESCRIPCION VALUES (2,4); INSERT INTO PRESCRIPCION VALUES (3,1); INSERT INTO PRESCRIPCION VALUES (4,2); INSERT INTO PRESCRIPCION VALUES (5,1); INSERT INTO PRESCRIPCION VALUES (5,4); INSERT INTO PRESCRIPCION VALUES (5,5); INSERT INTO PRESCRIPCION VALUES (6,3);
----------------------------------------------------------------------- ---------------------------------CONSULTAS----------------------------- ----------------------------------------------------------------------- --a) Listado de doctores en cuyo nombre existe la letra a como ltima letra. SELECT * FROM DOCTOR WHERE DOCTOR.NOMBRE LIKE '%a';
--b) Lista de las fechas de visitas realizadas por el doctor Peter Zurita. SELECT VISITA.FECHA FROM VISITA INNER JOIN DOCTOR ON VISITA.DOC_ID= DOCTOR.DOC_ID WHERE DOCTOR.NOMBRE LIKE 'PETER ZURITA';
--c) Lista del nombre y tipo de drogas cuyo precio supera los 8 dlares y en cuyo nombre aparece una letra a SELECT DROGA.NOMBRE, DROGA.TIPO FROM DROGA WHERE PRECIO >8 AND DROGA.NOMBRE LIKE '%a%';
--d) Precio promedio de las drogas almacenadas en la base de datos SELECT AVG(DROGA.PRECIO) FROM DROGA;
--e) Lista del nombre y edad de los doctores cuya edad menor o igual a la mitad de la edad mxima registrada en la base de datos. SELECT DOCTOR.NOMBRE, DOCTOR.EDAD FROM DOCTOR WHERE DOCTOR.EDAD <=((SELECT MAX(DOCTOR.EDAD) FROM DOCTOR)/2)
--f) Lista de los nombres y precios de drogas y fecha en la que fueron recetadas por el doctor Marcelo Holgun en sus visitas. SELECT DROGA.NOMBRE, DROGA.PRECIO, VISITA.FECHA FROM DROGA INNER JOIN PRESCRIPCION ON DROGA.DROGA_ID=PRESCRIPCION.DROGA_ID INNER JOIN VISITA ON PRESCRIPCION.DROGA_ID=VISITA.VISITA_ID INNER JOIN DOCTOR ON VISITA.DOC_ID=DOCTOR.DOC_ID WHERE DOCTOR.NOMBRE LIKE 'Marcelo Holgun';
--g) Actualice la edad de los doctores disminuyendo 3 aos a aquellos doctores cuya edad sea superior al promedio. UPDATE DOCTOR SET DOCTOR.EDAD=DOCTOR.EDAD-3 WHERE DOCTOR.EDAD >(SELECT AVG(DOCTOR.EDAD) FROM DOCTOR);
--h) Actualice la fecha de visita a 2012-01-01 de aquellas visitas realizadas por un doctor que tiene dos letras a en su nombre. UPDATE VISITA SET VISITA.FECHA='2012-01-01' FROM VISITA INNER JOIN DOCTOR ON VISITA.DOC_ID=DOCTOR.DOC_ID WHERE DOCTOR.NOMBRE LIKE '%a%a';
--i) Elimine de la base de datos las drogas cuyo precio dividido entre 3 sea superior al promedio de precios. DELETE FROM DROGA WHERE (DROGA.PRECIO/3)>(SELECT AVG(DROGA.PRECIO)FROM DROGA);