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

[SOLUCIONADO] dudda con query

Estas en el tema de dudda con query en el foro de Mysql en Foros del Web. tengo esta query select * from atenciones_2009 a , servicios_atencion_2009 b where a.id_atencion=b.id_atencion me dice las atenciones que tiene relacion con servicion de atencion ahi ...
  #1 (permalink)  
Antiguo 25/09/2008, 08:39
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 3 meses
Puntos: 2
dudda con query

tengo esta query

select * from atenciones_2009 a , servicios_atencion_2009 b
where a.id_atencion=b.id_atencion

me dice las atenciones que tiene relacion con servicion de atencion ahi todo bien , pero necesito saber cuales id_atencion de la tabla servicion_atencion_2009 no estan en atenciones_2009 ,no me funciona bien lo intente asi

select * from atenciones_2009 a , servicios_atencion_2009 b
where a.id_atencion<>b.id_atencion pero se queda como pegado sin mostrar nada.

un saludo y gracias.
__________________
"Cuando se adelanta un oponente, enfréntalo y salúdalo; si intenta retroceder, déjalo seguir su camino"
  #2 (permalink)  
Antiguo 25/09/2008, 08:49
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: dudda con query

Prueba esta

Código sql:
Ver original
  1. SELECT b.id_atencion FROM servicios_atencion_2009 b
  2.  LEFT JOIN atenciones_2009 a ON b.id_atencion=a.id_atencion WHERE a.id_atencion IS NULL


o esta (para versiones de MySQL 4.1 o posteriores).
Código sql:
Ver original
  1. SELECT b.id_atencion FROM servicios_atencion_2009 b WHERE b.id_atencion NOT IN (SELECT DISTINCT a.id_atencion FROM atenciones_2009 a)

No lo he probado
  #3 (permalink)  
Antiguo 25/09/2008, 08:54
rtn
 
Fecha de Ingreso: marzo-2008
Ubicación: México D.F.
Mensajes: 15
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: dudda con query

NO SERÍA MEJOR ASÍ

select * from servicios_atencion_2009 group by id_atencion

recorres los resultdos de esta consulta atravez de atenciones_2009

select * from atenciones_2009 id_atencion='id_atencion '

si se encuentra el valor lo agregas a un array

y al final lo muestras

ayudaría mas si nos indicas con que tecnología lo estas escribiendo (php, mysql, etc...)
  #4 (permalink)  
Antiguo 25/09/2008, 09:18
Avatar de Avatar810  
Fecha de Ingreso: agosto-2007
Ubicación: Por rumbos Regios
Mensajes: 485
Antigüedad: 16 años, 8 meses
Puntos: 23
Respuesta: dudda con query

Yo voy mas por la respuesta de Jurena, ya que yo he usado su segunda recomendacion...
Ademas que no te metes con lios de programacion adicional y el manejador de la BD se encarga del procesamiento optimizado...
__________________
Una demo siempre funcionará correctamente hasta que toque algo tu (hasta ahora) cliente.
Avatar810
  #5 (permalink)  
Antiguo 25/09/2008, 09:39
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.931
Antigüedad: 21 años, 3 meses
Puntos: 2
Respuesta: dudda con query

muchas gracias por la orientacion----


saludos.,
__________________
"Cuando se adelanta un oponente, enfréntalo y salúdalo; si intenta retroceder, déjalo seguir su camino"
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 18:41.