仅获取特定日期范围的平均值
Posted
技术标签:
【中文标题】仅获取特定日期范围的平均值【英文标题】:Get average for only a certain date range 【发布时间】:2013-01-04 01:31:50 【问题描述】:在具有过去十年每小时交易价格的数据库中,以下查询将按天对价格进行分组,生成每日平均价格,并在数据库中返回每天的平均价格:
Trade.average(:price, :group => "DATE_TRUNC('day', date)")
但是,这会返回一个过大的响应,我只需要获取过去 7 天的平均价格。我可以在此查询中添加什么以仅对 date
列中给出的过去 7 天的数据进行平均?
【问题讨论】:
【参考方案1】:这样的事情应该可以工作:
Trade.where('date >= ?', 7.days.ago).average(:price, :group => "DATE_TRUNC('day', date)")
【讨论】:
谢谢米莎!完美运行。我一直在尝试这样做一个小时,但是用不正确的语法链接它们。你有所作为。干杯:) @ac360 如果这回答了你的问题,别忘了accept it。以上是关于仅获取特定日期范围的平均值的主要内容,如果未能解决你的问题,请参考以下文章