我有一个文档,它是在2017-10-03 15:02:47
上生成的。
然后我有了这个Rails/SQL查询(无论我是通过Rails还是直接通过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 --有没有比手动向查询添加时间戳更好的方法来解决这个问题?
谢谢
2条答案
按热度按时间6l7fqoea1#
您的
needed_column
可能保存了时间戳(日期和时间),因为您已经知道了,您需要将其与另一个时间戳进行比较,或者使用::date
强制转换needed_column
这将产生:
iqih9akk2#
在Rails中试试这个:-
或作为sql查询:-