I minnesfrågor (QoQ's) kan det vara knepigt när det kommer till datatyper. De är mycket mindre kunniga om implicita datatypkonverteringar än en databas skulle vara. Genom att använda MySQL:s date_format
funktion, konverterar du faktiskt datetime-värdena till strängar . Så när du kör din QoQ kan CF faktiskt utföra en sträng jämförelse, vilket skulle ge mycket andra resultat än ett datum jämförelse. Kan förklara varför du får fel resultat.
Försök att ändra din databas fråga för att returnera ett datetime-värde istället för en sträng:
SELECT
COUNT(Timedetail) as Occurances
, STR_TO_DATE( DATE_FORMAT(Timedetail,'%m-%d-%Y'), '%m-%d-%Y') AS Timedetail
FROM ....
WHERE ...
Uppdatering:
Ett annat alternativ är att CAST värdet som en DATE
i din QoQ. Det skulle tvinga QoQ att utföra en datumjämförelse istället för en strängjämförelse:
WHERE CAST(Timedetail AS DATE) >= <cfqueryparam value="#form.startdate#"
cfsqltype="cf_sql_date">