Dotazy v paměti (QoQ) mohou být složité, pokud jde o datové typy. Jsou mnohem méně zdatní v implicitních převodech datových typů než databáze. Pomocí date_format
MySQL ve skutečnosti převádíte hodnoty datetime na řetězce . Takže když spustíte QoQ, CF může ve skutečnosti provádět řetězec srovnání, které by přineslo velmi odlišné výsledky než datum srovnání. Mohl by vysvětlit, proč dostáváte špatné výsledky.
Zkuste změnit svou databázi dotaz na vrácení hodnoty datetime namísto řetězce:
SELECT
COUNT(Timedetail) as Occurances
, STR_TO_DATE( DATE_FORMAT(Timedetail,'%m-%d-%Y'), '%m-%d-%Y') AS Timedetail
FROM ....
WHERE ...
Aktualizace:
Další možností je přenést hodnotu jako DATE
ve vašem QoQ. To by přinutilo QoQ provést porovnání data namísto porovnání řetězců:
WHERE CAST(Timedetail AS DATE) >= <cfqueryparam value="#form.startdate#"
cfsqltype="cf_sql_date">