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

Hola como estan?
Necesito crear una consulta que me devuelva los pacientes que tienen cuenta corriente y que su fecha ultima de entrega en la cuenta comparada con la fecha actual sea mayor que x cantidad de dias
algo asi

if datediff(fechaentrega, fechaactual) > 10 then

end if

ademas de eso tambien necesito saber que pacientes con cuenta corriente nunca hicieron una entrega

entonces utilizo esta consulta
Código SQL:
Ver original
  1. SELECT pacientes.nombre paciente, cuentahistoria.fecha, datediff(curdate(), cuentahistoria.fecha) AS dias
  2. FROM cuenta INNER JOIN pacientes ON pacientes.codpaciente =cuenta.codpaciente
  3.                         INNER JOIN cuentahistoria ON cuentahistoria.codcuenta = cuenta.codcuenta
  4. WHERE cuentahistoria.estado = 'ALTA' AND cuentahistoria.movimiento = 'E' AND datediff(curdate(), cuentahistoria.fecha) > 10
  5. GROUP BY cuenta.codcuenta
  6. ORDER BY dias DESC

la consulta funciona pero el problema es que necesito que cuentahistoria.fecha sea la ultima fecha de entrega...

con cuentahistoria.movimiento = 'E' controlo que el movimiento sea una entrega pero como dije antes necesito saber si no existe para una cuenta un movimiento que sea entrega

Muchas gracias