我有一个ActiveRecord模式,PurchaseSummary,它是我继承的,不能更改,如下所示:
purchase_summaries
date date_of_purchase
integer number_of_purchases
boolean coupon_used
例如,在11月1日,有800次购买,500次没有优惠券,300次有优惠券,11月2日有600次没有优惠券,100次有优惠券,所以数据库中的行如下所示:
2011-11-01, 500, false
2011-11-01, 300, true
2011-11-02, 600, false
2011-11-02, 100, true
例如,11/1的购买总数为800和11/2700。
问题:我想构造一个查询,返回每天使用优惠券购买的百分比,或者
2011-11-01, 0.375
2011-11-02, 0.142
发布于 2011-11-24 04:51:40
不是最优化的方式,但是你可以这样做:
select date_of_purchase
,sum(number_of_purchases) / (select sum(subquery.number_of_purchases)
from purchase_summaries subquery
where subquery.date_of_purchase = query.date_of_purchase
and subquery.coupon_used = 1) * 100 as percentage
from purchase_summaries query
group by date_of_purchase
https://stackoverflow.com/questions/8248596
复制相似问题