MySQL错误比较日期

时间:2011-01-28 22:27:56

标签: mysql ruby-on-rails

我正在尝试查询我的数据库并返回特定日期范围内的条目。作为一个可能的简单示例,请考虑以下内容:

@foos = FooTracking.where('when > ?', DateTime.new(2008, 12, 22, 14, 30))

导致错误和转储:

ActiveRecord::StatementInvalid: Mysql::Error: You have an error in your SQL
syntax; check the manual that corresponds to your MySQL server version for
the right syntax to use near 'when >= '2008-12-22 14:30:00')' at line 1:
SELECT `foo_tracking`.* FROM `foo_tracking` WHERE (when >= '2008-12-22 14:30:00')

where调用在我的表的其他列上运行(没有与日期有关),我在这里缺少什么?

1 个答案:

答案 0 :(得分:5)

WHEN是SQL保留字。如果你总是在这样的反引号中提到它,你仍然可以将它用作列名:`when`