Está en la página 1de 2

/*CREACION DE BASE DE DATOS*/

CREATE DATABASE CITAS

/*USO DE BASE DE DATOS PARA EJECUTAR CODIGO QUE LA ALTERE*/


USE CITAS

/*CREACIÓN DE TABLA ESPECIALIDADES*/


CREATE TABLE ESPECIALIDADES(
Id_especialidad int identity(1,1) PRIMARY KEY NOT NULL,
Nombre varchar(160) NOT NULL,
Descripcion varchar(160) NOT NULL
)

/*CREACIÓN DE TABLA MEDICO*/


CREATE TABLE MEDICO(
Id_medico int identity(1,1) PRIMARY KEY NOT NULL,
Nombre_completo varchar(200) NOT NULL,
direccion varchar(250) NOT NULL,
telefono int NOT NULL
)

/*CREACIÓN DE TABLA ESPECIALIDADES_MEDICO*/


CREATE TABLE ESPECIALIDADES_MEDICOS(
Id_especialidad int NOT NULL,
Id_medico int NOT NULL,
)

/*CREACION DE LLAVE PRIMARIA Id_especialidad,Id_medico*/


ALTER TABLE ESPECIALIDADES_MEDICOS ADD PRIMARY KEY(Id_especialidad,Id_medico)
/*CREACION DE LLAVE FORANEA Id_especialidad*/
ALTER TABLE ESPECIALIDADES_MEDICOS ADD FOREIGN KEY(Id_especialidad) REFERENCES ESPECIALIDADES
/*CREACION DE LLAVE FORANEA Id_medico*/
ALTER TABLE ESPECIALIDADES_MEDICOS ADD FOREIGN KEY(Id_medico) REFERENCES MEDICO

/*CREACIÓN DE TABLA PACIENTE*/


CREATE TABLE PACIENTE(
Id_paciente int identity(1,1) PRIMARY KEY NOT NULL,
Nombre_completo varchar(200) NOT NULL,
direccion varchar(250) NOT NULL,
telefono int NOT NULL
)

/*CREACIÓN DE TABLA CITAS*/


CREATE TABLE CITAS(
Id_cita int identity(1,1) PRIMARY KEY NOT NULL,
fecha date NOT NULL,
hora time NOT NULL,
Id_medico int NOT NULL,
Id_paciente int NOT NULL
)

/*CREACION DE LLAVE FORANEA Id_especialidad*/


ALTER TABLE CITAS ADD FOREIGN KEY(Id_medico) REFERENCES MEDICO
/*CREACION DE LLAVE FORANEA Id_medico*/
ALTER TABLE CITAS ADD FOREIGN KEY(Id_paciente) REFERENCES PACIENTE

/*INSERCIÓN DE REGISTROS A TABLA ESPECIALIDADES*/


INSERT INTO ESPECIALIDADES VALUES('Cardiologia','Cuidado del corazon')
INSERT INTO ESPECIALIDADES VALUES('Neumología','Cuidado de las vias respiratorias')
INSERT INTO ESPECIALIDADES VALUES('Endocrinología','Cuidado de la salud especializada en tiroides')
INSERT INTO ESPECIALIDADES VALUES('Dermatología','Cuidado de la piel')
INSERT INTO ESPECIALIDADES VALUES('Medicina General','Cuidado de la salud en general')

/*INSERCIÓN DE REGISTROS A TABLA MEDICO*/


INSERT INTO MEDICO VALUES('Doctor Ernesto cardona','San salvador', 78527514)
INSERT INTO MEDICO VALUES('Doctor Juar Marquina','San salvador', 74158526)
INSERT INTO MEDICO VALUES('Doctor Mario Marroquin','Sonsonate', 65487412)
INSERT INTO MEDICO VALUES('Doctora Maria Salazar','Soyapango', 78945612)
INSERT INTO MEDICO VALUES('Doctora Carmen Martinez','San salvador', 65471598)

/*INSERCIÓN DE REGISTROS A TABLA ESPECIALIDADES_MEDICOS*/


INSERT INTO ESPECIALIDADES_MEDICOS VALUES(1,1)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(1,5)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(2,2)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(2,3)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(3,3)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(3,5)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(4,4)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(4,1)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(5,5)
INSERT INTO ESPECIALIDADES_MEDICOS VALUES(5,2)

/*INSERCIÓN DE REGISTROS A TABLA PACIENTE*/


INSERT INTO PACIENTE VALUES('Mario Nelson Mena','San salvador', 74154478)
INSERT INTO PACIENTE VALUES('Oscar Armando Mendoza','San Bartolo', 72458964)
INSERT INTO PACIENTE VALUES('Elena Maria Caceres','San Martin', 71487267)
INSERT INTO PACIENTE VALUES('Juana Sofia Bariño','San Miguel', 74895482)
INSERT INTO PACIENTE VALUES('Diego Josue Escobar','La Union', 63254718)

/*INSERCIÓN DE REGISTROS A TABLA CITAS*/


INSERT INTO CITAS VALUES('2022/12/18','08:00',1,1)
INSERT INTO CITAS VALUES('2022/12/19','08:00',2,2)
INSERT INTO CITAS VALUES('2022/12/22','08:00',3,3)
INSERT INTO CITAS VALUES('2022/12/23','08:00',4,4)
INSERT INTO CITAS VALUES('2022/12/27','08:00',5,5)

/*VISUALIZACIÓN DE DATOS ALMACENADOS*/


SELECT * FROM ESPECIALIDADES
SELECT * FROM MEDICO
SELECT * FROM ESPECIALIDADES_MEDICOS
SELECT * FROM PACIENTE
SELECT * FROM CITAS

/*CONSULTAS CONDICIONALES*/
SELECT * FROM ESPECIALIDADES WHERE Id_especialidad=4
SELECT * FROM ESPECIALIDADES WHERE Nombre Like 'Cardio%'
SELECT * FROM ESPECIALIDADES WHERE Id_especialidad in (1,3,5)
SELECT * FROM ESPECIALIDADES WHERE Id_especialidad >3
SELECT * FROM ESPECIALIDADES WHERE Nombre!='Medicina General'

/*CONSULTAS COMBINADAS*/

/*DATOS DE MEDICO, ESPECIALIDADES Y CITAS PROGRAMADAS*/


SELECT me.Nombre_completo as medico, es.Nombre as especialidad, ci.fecha as fecha_cita
FROM MEDICO me, ESPECIALIDADES es, CITAS ci, ESPECIALIDADES_MEDICOS esm
where me.Id_medico= esm.Id_medico and es.Id_especialidad=esm.Id_especialidad and me.Id_medico=ci.Id_medico

/*DATOS DE PACIENTE, CITAS PROGRAMADAS Y MEDICO QUE ATENDERÁ*/


SELECT pa.Nombre_completo as Paciente, me.Nombre_completo as Medico, ci.fecha as Fecha_Cita
FROM PACIENTE pa, MEDICO me, CITAS ci
WHERE pa.Id_paciente=ci.Id_paciente and me.Id_medico=ci.Id_medico

/*CONSULTAS USANDO JOIN*/

/*VISUALIZACION DE CITA DE PACIENTE Y LA ESPECIALIDAD QUE POSEE EL MEDICO QUE CONSULTARA*/


SELECT pa.Nombre_completo as Paciente, ci.fecha as Fecha_Cita, es.Nombre as especialidad
FROM PACIENTE pa
INNER JOIN CITAS ci ON pa.Id_paciente= ci.Id_paciente
INNER JOIN MEDICO me ON me.Id_medico= ci.Id_medico
INNER JOIN ESPECIALIDADES_MEDICOS esm ON me.Id_medico=esm.Id_medico
INNER JOIN ESPECIALIDADES es ON es.Id_especialidad=esm.Id_especialidad
order by Fecha_Cita ASC

/*DATOS DE MEDICO, ESPECIALIDADES Y CITAS PROGRAMADAS*/


SELECT me.Nombre_completo as medico, es.Nombre as especialidad, ci.fecha as fecha_cita
FROM CITAS ci INNER JOIN MEDICO me ON me.Id_medico= ci.Id_medico
INNER JOIN ESPECIALIDADES_MEDICOS esm ON me.Id_medico=esm.Id_medico
INNER JOIN ESPECIALIDADES es ON es.Id_especialidad=esm.Id_especialidad

También podría gustarte