Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/01/2011, 08:38
mgd
 
Fecha de Ingreso: enero-2009
Mensajes: 129
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Datediff - calcular días

Tu consulta me ayudo mucho, cambie algunas cositas para que quede como necesitaba.
Código SQL:
Ver original
  1. SELECT
  2.          P.nombre paciente,
  3.          C.codcuenta,
  4.     C.debe,
  5.         CH.fecha,
  6.         DATEDIFF(CURDATE(), CH.fecha) dias
  7. FROM
  8.         cuenta C
  9. INNER JOIN pacientes P ON P.codpaciente = C.codpaciente
  10. INNER JOIN
  11.                 (SELECT codcuenta, MAX(fecha) fecha, estado, movimiento
  12.                 FROM cuentahistoria
  13.         WHERE movimiento = 'E' AND estado = 'ALTA'
  14.                 GROUP BY codcuenta) CH ON C.codcuenta = CH.codcuenta
  15. WHERE
  16.        DATEDIFF(CURDATE(), CH.fecha) > 11 AND c.debe > 0
  17. GROUP BY C.codcuenta
  18. ORDER BY dias DESC;


movimiento = 'E' es la forma de saber si el movimiento es una entrega

Ahora el tema es: como hago para saber en esta misma consulta si un paciente con cuenta corriente no tiene entregas realizadas...

Pense utilizar un OR en datediff del where pero la verdad que no va