Ver Mensaje Individual
  #26 (permalink)  
Antiguo 23/01/2012, 20:32
Avatar de Nemutagk
Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 10 meses
Puntos: 406
Respuesta: consulta sin solucion..

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Suponiendo que te entendí bien, tienes dos registros por cada documento, uno con la fecha y estado de "ingreso", y el otro con la fecha y estado de "egreso", y además cuentas con un campo donde se almacena el numero de documento en cuestión.
Por lo que dices en un momento, quieres que la base te devuelva todos los documentos que ingresaron antes de una fecha y no egresaron.
Suponiendo también que por cada documento hay una sola entrada y una sola salida, la cosa sería mas o menos:
Código MySQL:
Ver original
  1.     documentos I INNER JOIN documentos E ON I.documento = E.documento
  2.     I.estado = 'ingreso'
  3.     AND E.estado = 'salida'
  4.     AND I.fecha<'2012-01-23'
  5.     AND E.fecha IS NULL;

Si lo que quieres es el conjunto de documentos que si se terminaron, la consulta es más simple:
Código MySQL:
Ver original
  1.     documentos I INNER JOIN documentos E ON I.documento = E.documento
  2.     I.estado = 'ingreso'
  3.     AND E.estado = 'salida'
  4.     AND I.fecha<'2012-01-23'
  5.     AND E.fecha<'2012-01-23';

El PHP que falta te lo dejo a ti.

Nota: Trata de ser mas técnico en las descripciones. Piensa que los que leen lo que escribes no tienen ni idea de qué es lo que estás programando.
joder!! que buena solución...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)