我正在使用Oracle,我有一个select查询,我想从Inventory表中选择Year大于或等于2000年。
Select * from Inventory
where
manufac_date >= <cfqueryparam value="01/01/2000" cfsqltype="CF_SQL_DATE">
我只获得年份大于2000的那些值,而不是那些来自2000年的值。
有任何意见或建议吗?
答案 0 :(得分:1)
也许Oracle不同。但只要它识别出cf_sql_date
,而不仅仅是cf_sql_timestamp
,我认为它没有理由不起作用。你肯定:
>=
,而不只是>
答案 1 :(得分:1)
您应该将cfqueryparam值设为日期对象
manufacDateFilter = createDate(2000, 1 , 1);
在查询中然后你有
where
manufac_date >= <cfqueryparam value="#manufacDateFilter#" cfsqltype="CF_SQL_DATE">
或者像这样使用Oracle的to_date函数(未经过测试,但应该可以使用)
manufac_date >= to_date(<cfqueryparam cfsqltype="cf_sql_varchar" value="01/01/2000">,'mm/dd/yyyy')