You are on page 1of 2

EJERCICIOS TEMA 5.

ALGEBRA RELACIONAL
SOLUCIONES A LOS EJERCICIOS.


Partiendo del las siguientes tablas:
MEDICOS(Cod_medico, nombre, especialidad)
PACIENTES(NSS, nombre, direccin, telfono)
CONSULTAS(n_consulta, cod_medico (FK),NSS_paciente(FK),dia,mes,ao,
observaciones)
(Los pacientes van a consultas y se anota en la tabla de consultas un nmero
para esa consulta que la identifica, junto con el NSS que es el nmero de la
seguridad social que identifica al paciente y el cdigo del mdico que lo
atiende. Se anota la fecha separada en da, mes y ao. En la tabla de
pacientes estn todos los que pertenecen al centro de salud, aunque no hayan
ido a ninguna consulta).
Realizar en lgebra relacional las siguientes consultas:

1) Obtener el nombre de los mdicos de la especialidad pediatra.

nombre
(
especialidad=Pediatra
MDICOS)
2) Obtener los nombres y telfonos de todos los pacientes.

nombre, telfono
(PACIENTES)
3) Obtener los nmeros de consulta del mes de octubre.

nconsulta
(
mes=octubre
CONSULTAS)
4) Obtener el nombre y el NSS de los pacientes que no han ido a ninguna
consulta.
Son los pacientes que estn en la tabla de Pacientes menos los que estn en
la tabla de consultas. Combinar las tablas por el NSS.

nss,nombre
(PACIENTES)-
nss,nombre
(PACIENTES CONSULTAS)
nss=nss

5) Mostrar el nombre de los mdicos que han atendido al paciente nmero 50.

nombre
(
nss=50
MEDICOS CONSULTAS)
cod_medico=cod_medico


EJERCICIOS TEMA 5. ALGEBRA RELACIONAL
SOLUCIONES A LOS EJERCICIOS.


6) Mostrar el nombre y el NSS de los pacientes que han tenido consulta con el
dermatlogo.

nss,nombre
(
especialidad=dermatologa
(((MEDICOS CONSULTAS)
cod_medico=cod_medico
)

PACIENTES)
cod_medico=cod_medico
)

A esta consulta la voy a llamar CONSULTA_DERMA y la usar para el prximo
ejercicio.

7) Mostrar el nombre y el NSS de los pacientes que no han tenido consulta
con el dermatlogo.
Son los pacientes que estn en la tabla de pacientes pero no estn en la
consulta del ejercicio anterior.

nss,nombre
(PACIENTES)-
nss,nombre
(CONSULTA-DERMA)
8) Mostrar el nombre de los pacientes que no han ido a consulta el ao 2013.
Busco primero los pacientes que han ido a la consulta el ao 2013 y
despus resto esta tabla a la tabla de pacientes. Combino las dos tablas
porque quiero obtener pacientes que han ido a consulta en alguna ocasin,
pero no en el ao 2013, por tanto deben estar en la tabla consultas.

ao=2013
(PACIENTES CONSULTAS)
nss=nss
Y llamo a esta consulta CONSULTA_2013

nombre
(PACIENTES CONSULTAS)
nss=nss
-
nombre
(CONSULTA_2013)

Si no combino la tabla pacientes con consultas, obtendra los pacientes que
no han ido el 2013, pero que tampoco han ido nunca a ninguna consulta.

You might also like