Consulta SQL.

Iniciado por Hadess_inf, 16 Noviembre 2009, 02:31 AM

0 Miembros y 1 Visitante están viendo este tema.

Hadess_inf


En curso estan:

1 - Matematica
2 - Lenguaje
3 - Historia

En detalle estan

1 - 1

Como hacer que en una consulta me muestre los cursos que no estan en detalle.
Gracias.

Novlucker

La más básica ..

Código (sql) [Seleccionar]
select *
from curso
where curso.idcurso not in (select detalle.idcurso from detalle)


Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Castg!

disculpa novlucker, me podes explicar esto :?
Código (sql) [Seleccionar]
NOT IN (SELECT detalle.idcurso FROM detalle)

kamsky

CitarInsertar Cita
disculpa novlucker, me podes explicar esto :?
Código

NOT IN (SELECT detalle.idcurso FROM detalle)

se hace una subconsulta (consulta dentro de otra), en la que se buscan todos los id's de la tabla detalle, y con ayuda del not lo "negamos", de forma que en palabras la consulta sería algo como:

Muéstrame todos los campos de la tabla curso, teniendo en cuenta que los que me muestres no tienen que tener un id igual al que hay en la tabla detalle
----NO HAY ARMA MÁS MORTÍFERA QUE UNA PALABRA BROTADA DE UN CORAZÓN NOBLE, Y UN PAR DE HUEVOS QUE LA RESPALDEN---

                       hack 4 free!!

Castg!

la explicacion perfecta, ahora, que ganas con esto?

kamsky

no se, es la consulta que pidió hadess :
CitarComo hacer que en una consulta me muestre los cursos que no estan en detalle.
, pregúntale a él :P
----NO HAY ARMA MÁS MORTÍFERA QUE UNA PALABRA BROTADA DE UN CORAZÓN NOBLE, Y UN PAR DE HUEVOS QUE LA RESPALDEN---

                       hack 4 free!!


Novlucker

jaja ... como han dicho, en realidad la consulta es así .. buscas "X" elementos que además estén dentro de otro subgrupo, no hay muchas vueltas  :P

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

jdc

Las consultas SQL mientras más largas más entretenidas se hacen, hace poco en un examen me tocó una consulta que incluía un case xD

Hadess_inf

Yo lo queria hacer con inner join, pero al final tuve que hacerlo de esa forma porque me aburri xD ..