SQL - Que hice mal en la consulta??

 
Vista:

Que hice mal en la consulta??

Publicado por Rudy Castañeda (1 intervención) el 04/12/2007 18:59:30
Hola fijense que estoy haciendo una consulta la cual para una necesito devolver las jornadas de una clínica, y la consulta es la siguiente:

select distinct j.jornada, j.nombre from clinica c, jornada j where j.jornada = c.jornada and c.clinica = 1 and c.nombre='CLINICA DE ODONTOLOGIA 1';

bueno esa la hace bien, pero también necesito una en donde me devuelva las jornadas que no están en la clínica, entonces le cambié el j.jornada = c.jornada a --.--> j.jornada <> c.jornada quedando así:

select distinct j.jornada, j.nombre from clinica c, jornada j where j.jornada <> c.jornada and c.clinica = 1 and c.nombre='CLINICA DE ODONTOLOGIA 1';

y lo que hace es devolverme todas las que están en el catálogo de jornada, por lo que pude ver al parecer la consulta la hace para cada tupla que se encuentre en clínca, cómo puedo hacerle para que la segunda consulta me devuelva las jornadas que no están asignadas a la clínica???

de antemano muchísimas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Que hice mal en la consulta??

Publicado por Liliana (426 intervenciones) el 05/12/2007 13:26:46
Hola,
Te contesto cómo se hace en SQL Server:

select j.jornada, j.nombre
from jornada j
where j.jornada not in
(select distinct j.jornada, j.nombre
from clinica c, jornada j
where j.jornada = c.jornada and c.clinica = 1 and
c.nombre='CLINICA DE ODONTOLOGIA 1')

Saludos,
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Que hice mal en la consulta??

Publicado por Ruben (9 intervenciones) el 05/12/2007 16:23:22
select distinct j.jornada, j.nombre
from jornada j where
not exists(select * from clinica c where c.jornada = j.jornada and c.clinica=1
and c.nombre='CLINICA DE ODONTOLOGIA 1')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar