我有一個已經產生,也就是說,在2017-10-03 15:02:47
文檔。Rails的ActiveRecord的+:比較日期
然後我就這個軌道/ SQL查詢(如果我運行它通過軌道或直接通過SQL控制檯,其結果都是一樣的也沒關係):
SELECT * FROM table where needed_column <= '2017-10-03';
此查詢將不會返回我在2017-10-03 15:02:47
上生成的文檔。如果我不跑,不過,這個查詢:
SELECT * FROM table where needed_column <= '2017-10-03 23:59:59';
然後我得到所需要的文件(上2017-10-03 15:02:47
生成)。
爲了解決這個問題,我可以的時候手動添加到查詢(23:59:59
),但它不是一個很優雅的解決方案。
我使用Rails 5,AR,PostgreSQL的 - 有沒有更好的辦法來解決這個問題,而不是手動添加時間戳查詢?
謝謝
嘗試使用「end_of_day」,例如:Time.now.end_of_day給週一09年10月23:59:59 UTC 2017年 –
我認爲這是因爲2017年10月3日15時02分47秒被認爲是不僅僅是2017-更大10-03。你可以使用SELECT * FROM表where needed_column <'2017-10-04'; –
嘗試此查詢SELECT * FROM表,其中needed_column <=日期 '2017年10月3日'; –