Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Como uno estas dos consultas?

Estas en el tema de Como uno estas dos consultas? en el foro de Bases de Datos General en Foros del Web. Hola, Tengo un consulta en la que quiero no mostrar los registros con el id que saco de otra consulta, es decir, tengo una consulta ...
  #1 (permalink)  
Antiguo 27/07/2008, 15:40
 
Fecha de Ingreso: abril-2003
Mensajes: 363
Antigüedad: 21 años, 7 meses
Puntos: 3
Como uno estas dos consultas?

Hola,

Tengo un consulta en la que quiero no mostrar los registros con el id que saco de otra consulta, es decir, tengo una consulta del tipo:
Código HTML:
SELECT * FROM tabla WHERE tabla.id NOT IN (SELECT tab.id FROM tabla2 AS tab WHERE tab.completo=1 GROUP by tab.id)
Ya se que se puede hacer de otra forma, pero la consulta que tengo que hacer es más compleja y necesito hacer una subconsulta.
Lo que nose es si hay que usar IN, ANY, ALL,... ni como usarlo exactamente para que me elimine esos registros.

Muchas Gracias
  #2 (permalink)  
Antiguo 28/07/2008, 03:40
 
Fecha de Ingreso: abril-2003
Mensajes: 363
Antigüedad: 21 años, 7 meses
Puntos: 3
Respuesta: Como uno estas dos consultas?

Sigo intentando realizar la consulta pero nada.

Lo que necesito es sacar todos los resultados de la primera consulta menos los que tienen igual id que la segunda consulta.

Gracias adelantadas.
  #3 (permalink)  
Antiguo 28/07/2008, 04:11
 
Fecha de Ingreso: mayo-2008
Ubicación: Mallorca
Mensajes: 20
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Como uno estas dos consultas?

Yo lo haría tal que así, quitando el NOT delante del IN y cambiando la condición de la subconsulta, esto es no que tab.completoid sea igual a uno sino que sea diferente. El order by también lo saco de la subconsulta. Asímismo estimo innecesario el GROUP BY.

Cita:
SELECT *
FROM tabla
WHERE tabla.id IN
(
SELECT tabla2.id
FROM tabla2
WHERE tabla2.completo<>1
);
  #4 (permalink)  
Antiguo 28/07/2008, 06:21
 
Fecha de Ingreso: abril-2003
Mensajes: 363
Antigüedad: 21 años, 7 meses
Puntos: 3
Respuesta: Como uno estas dos consultas?

Perfecto!!

Yo creo que no me salía por un problema con los iguales y el not in.

Gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:17.