2017-01-15 73 views
0

我有一個請求表from:stringRails的,其中來自(串)大於或等於今天

專欄中,我想獲得Request.where("from >= ?", Date.today)但爲字符串。有沒有辦法在不改變列字符串到datetime的情況下從大於或等於今天獲取所有請求?

+0

您使用的是什麼RDBMS?您可以使用適當的轉換創建索引,然後查詢索引或在每個查詢上處理強制。 – coreyward

+0

我正在使用postgresql –

回答

0

如果from列字符串採用通常的字符串日期格式(例如「2017-01-15」)格式化,那麼只需將Date.today轉換爲字符串即可。字符串排序將自動等同於日期排序。

Request.where("from >= ?", Date.today.to_s) 
1

您還可以將字符串轉換爲SQL中的日期。

Request.where("DATE(from) >= ?", Date.today)

我不認爲這是更好的方式來儘可能雖然改變列類型。將日期存儲爲字符串通常是一個糟糕的主意。

相關問題