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

No logro dar con una... ayuda por favor

Estas en el tema de No logro dar con una... ayuda por favor en el foro de Mysql en Foros del Web. Hola amigos, miren, he intentado pero no logro hacer un listado como necesito. Tengo una base de datos llamada CONTROL y en ella tengo 3 ...
  #1 (permalink)  
Antiguo 09/03/2010, 10:36
 
Fecha de Ingreso: octubre-2008
Mensajes: 147
Antigüedad: 15 años, 6 meses
Puntos: 3
No logro dar con una... ayuda por favor

Hola amigos, miren, he intentado pero no logro hacer un listado como necesito.

Tengo una base de datos llamada CONTROL y en ella tengo 3 tablas:

ACTIVIDAD
DATOS
ACEPTADOS

La tabla de DATOS contiene un listado completo de nombres en esta forma:

IDENTIFICADOR, NOMBRE

La tabla de ACTIVIDAD contiene tambien un listado completo con los siguientes campos:

IDENTIFICADOR, STATUS

Y finalmente la tabla ACEPTADOS contiene una lista donde algunos de los datos de la tabla DATOS están.



Por ende, DATOS y ACTIVIDAD contienen la misma cantidad de registros con la diferencia que uno cuenta con el campo de nombre y otro cuenta con el campo de status.


Yo en ACEPTADOS tengo el registro de pocos de los registros en DATOS y lo que quiero es decirle a MYSQL:


Seleccionar TODO de DATOS, ACTIVIDAD, ACEPTADOS DONDE ACTIVIDAD.STATUS sea igual a 'ACTIVO' y que no exista en la tabla de ACEPTADOS.


Entonces me haría un listado tomando como base DATOS y unicamente mostrando aquellos que estén activos y que no existan en ACEPTADOS


No sé si me di a entender,e spero me puedan ayudar.


Estaba intentando con:

Código:
SELECT DISTINCT DATOS.IDENTIFICADOR FROM ACTIVIDAD, DATOS, ACEPTADOS

Pero me hace algo que no me sirve
  #2 (permalink)  
Antiguo 09/03/2010, 13:01
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Respuesta: No logro dar con una... ayuda por favor

Aclaro que hay formas mejores de hacerlo "con inner join o usando la funcion exist" pero creo que asi le puede funcionar.

Código HTML:
select * from datos,actividad where datos.identificado = actividad.identificador and actividad.estatus=ACTIVO
and datos.identificador not in (select identificador from aceptados) 

hay traeria los datos de las otras dos tablas siempre y cuando esten activos y no esten en aceptados

espero le sirva

Etiquetas: dar, favor
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 21:03.