我正在寻找一种方法来构建一个比较同一记录的两个属性的查询,而无需先提取记录并比较后查询。我的具体案例可能有 10k 的记录,因此遍历每个记录不是一种选择。
示例:通过查询 .where updated_at == created_at 查找此记录
#<User id: 1, name: "xxx", created_at: "2012-07-01 12:00:00", updated_at: "2012-07-01 12:00:00">
Rails 3+,ActiveRecord,MySQL。
更新:正如评论员 Matzi 指出的那样,使用 sqlite 时以下内容有效,但mysql无效:
User.where("created_at == updated_at")
已解决:简单的错误,ruby vs sql。
Sqlite 可以使用:
User.where("created_at == updated_at")
但 MySQL 要求:
User.where("created_at = updated_at")