2014-10-01 178 views
1

我有一個使用MySQL數據庫的rails 3應用程序。部分功能是我想查詢一個表我的數據庫的所有記錄,其中:MySQL查詢檢查日期時間列

updated_at + 1.year <= DateTime.now 

,但我有寫這會給我的預期結果的查詢問題。任何想法我可以怎麼做呢?

+0

您正在做mySql查詢或活動記錄查詢? – Surya 2014-10-01 02:22:14

+0

除了語法之外......爲了獲得最佳查詢性能,您希望提交給數據庫的SQL文本的形式爲**'column <= const-const' **,而不是**'column +常量<= const' **。 (對於後一種形式,比較左側的表達式需要針對表中的*每行*進行評估;對於左側的裸露列,MySQL可以對合適的索引使用範圍掃描操作。 – spencer7593 2014-10-01 03:03:21

回答

1

嘗試最新功能:

updated_at + interval 1 year <= now() 
0

我會

where('updated_at <= ?', 1.year.ago)` 

去,因爲它是更容易理解。