Las consultas en memoria (QoQ) pueden ser complicadas cuando se trata de tipos de datos. Son mucho menos expertos en conversiones implícitas de tipos de datos que una base de datos. Usando el date_format
de MySQL función, en realidad está convirtiendo los valores de fecha y hora en cadenas . Entonces, cuando ejecuta su QoQ, CF puede estar realizando una cadena comparación, que produciría resultados muy diferentes a una fecha comparación. Podría explicar por qué está obteniendo los resultados incorrectos.
Intenta cambiar tu base de datos consulta para devolver un valor de fecha y hora en lugar de una cadena:
SELECT
COUNT(Timedetail) as Occurances
, STR_TO_DATE( DATE_FORMAT(Timedetail,'%m-%d-%Y'), '%m-%d-%Y') AS Timedetail
FROM ....
WHERE ...
Actualización:
Otra opción es CAST el valor como DATE
en su QoQ. Eso obligaría a QoQ a realizar una comparación de fechas, en lugar de una comparación de cadenas:
WHERE CAST(Timedetail AS DATE) >= <cfqueryparam value="#form.startdate#"
cfsqltype="cf_sql_date">