我正在尝试在 Rails 中制作图表,例如给定日期范围内每天的平均销售额
假设我有一个 products_sold 模型,它有一个“sales_price”浮动属性。但是如果某一天没有销售(例如模型/数据库中没有销售),我想简单地返回 0。
MySQL/Rails 中完成这项工作的最佳方法是什么?我知道我可以做这样的事情:
(这个 SQL 查询可能是完全错误的方式来获得我想要的东西)
SELECT avg(sales_price) AS avg, DATE_FORMAT(created_at, '%m-%d-%Y') AS date
FROM products_sold WHERE merchant_id = 1 GROUP BY date;
并得到这样的结果:
| 平均 | 日期 | 23 01-03-2009 50 01-05-2009 34 01-07-2009 ……
我想得到的是:
| 平均 | 日期 | 23 01-03-2009 0 01-04-2009 50 01-05-2009 0 01-06-2009 34 01-07-2009 0 01-08-2009 ……
我可以使用 SQL 执行此操作,还是必须对结果进行后处理以查找日期范围中的哪些日期不在 SQL 结果集中?也许我需要一些子选择或 IF 语句?
感谢大家的帮助。