Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/06/2015, 13:11
jmendezg
 
Fecha de Ingreso: febrero-2015
Mensajes: 89
Antigüedad: 9 años, 3 meses
Puntos: 1
Respuesta: calcular los dias de mora

agregando un case when antes del if.


quedaría algo asi:

Codigo SQL.
Código MySQL:
Ver original
  1. UPDATE pagos
  2. SET mora = (Case when tipo_credito ='diario' then
  3.  IF(TIMESTAMPDIFF(DAY , fecha_pago, CURDATE()) <= 32, 'Al dia', IF(TIMESTAMPDIFF(DAY , fecha_pago, CURDATE()) <= 62, 'Vencida', 'Juridico'))
  4. when tipo_credito ='semanal'  Then  
  5.  IF(TIMESTAMPDIFF(DAY , fecha_pago, CURDATE()) <= 35, 'Al dia', IF(TIMESTAMPDIFF(DAY , fecha_pago, CURDATE()) <= 65, 'Vencida', 'Juridico'))
  6.  
  7.  

Pero la más viable desde mi punto de vista es usando un procedimiento almacenando donde declares variables.

Se supone que existe un campo en la tabla que es "tipo de credito", con eso determinas
que valor asignarle a una variable para luego sume a ese 30 y al 60


con eso tu consulta saldría en una linea. :).

Saludos,