mysql - ColdFusion QOQ,比较时间值?

标签 mysql coldfusion coldfusion-9 qoq

我尝试使用 ColdFusion QOQ 执行以下代码,但它没有检索任何记录。我使用“HH:mm”格式的时间并使用 MySQL 作为后端,原始时间列的数据类型为“TIME”。

<cfquery dbtype="query" name="getCount">
    SELECT count(*) as mycount
    FROM getExams
    WHERE start_time <= <cfqueryparam cfsqltype="cf_sql_time" value="#curr_time#">
</cfquery>

我能够使用 <cfqueryparam> 成功比较日期值。但是,它不适用于时间列。有人可以帮忙吗?

更新:
对于此问题有一个开放的错误报告。请参阅bug #3551866

最佳答案

即使经过多个小时的努力,我仍无法找到一种简单的方法来比较 ColdFusion QOQ 中的时间值。因此,这是我使用的解决方法:

第 1 步
要检索具有时间数据类型的数据库列,请使用格式 hhmmss
例如。就我的 MySQL 而言,我使用了:
CONVERT(DATE_FORMAT(db_time_col, '%H%i'), UNSIGNED INTEGER) as db_time_col

第 2 步
在 ColdFusion QOQ 中,将时间值转换为与步骤 1 中使用的格式相同的格式。
例如。就我而言,它是:<cfqueryparam cfsqltype="cf_sql_integer" value="#timeFormat(cf_time_col, 'HHmm')#">

关于mysql - ColdFusion QOQ,比较时间值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16207670/

相关文章:

php - 获取 Div 的宽度并根据元素数量限制 mySQL 查询?

coldfusion - 使用 SSO 从 Google Apps 登录到我现有的应用程序

coldfusion - 在 ColdFusion 集群上重置应用程序范围

coldfusion - coldfusion 函数中 cfparam 和 cfargument 之间的区别?

mysql - 删除 MySQL 中超过 14 天的行

PHP 登录系统 - 当像在数据库中一样登录用户名时,将用户名设置为小

mysql - 选择余额大于 10000 并且到期日期距离今天小于 2 天的行

coldfusion - 如何将 Coldfusion10 查询的结果导出为 html?

jquery - 创建动态 html 表,其中 td 值与 ms sql db 中的 th 值关联

coldfusion - 在 CFML 中循环一个集合(结构)有什么更好的方法吗?