Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/10/2011, 12:36
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: problemas con una colsulta

Hola palssk:

En tu post pones esto:

Cita:
la fecha_activacion tiene un valor de 2011-10-28 10:24:18 y en DIAS_DIFERENCIA PUES DEBE DAR 0
pero en los datos de ejemplo que estás poniendo de ejemplo la fecha de activación es NULL.

Código:
FECHA_ACTIVACION -----null
Si tu campo FECHA_ACTIVACION es NULL, entonces la función DATEDIFF también te estaría regresando un NULL:

Código MySQL:
Ver original
  1. +---------------------------+
  2. +---------------------------+
  3. |                      NULL |
  4. +---------------------------+
  5. 1 row in set (0.10 sec)
  6.  
  7. mysql> select DATEDIFF(CURDATE(), '2011-10-28 10:24:18');
  8. +--------------------------------------------+
  9. | DATEDIFF(CURDATE(), '2011-10-28 10:24:18') |
  10. +--------------------------------------------+
  11. |                                          0 |
  12. +--------------------------------------------+
  13. 1 row in set (0.00 sec)

¿No te estarás refiriendo a tu campo DATE_PURCHASED? este campo si tiene la fecha que mencionas.

Debes tener cuidado al utilizar LEFT JOINS, pues este sirve justamente para unir dos tablas independientemente de que existan datos en una de ellas, rellenando con NULL'S los campos que no tengan información. Verifica la información de tu tabla, si no quieres mostrar los registros que tengan fecha de activación nula simplemente agrega a tu filtro esta condición:

Código:
AND B.FECHA_ACTIVACION IS NOT NULL
Saludos
Leo.