首先,这是我的表架构:
order_id, product_id, add_to_cart_order, reordered
我的问题是计算产品的重新订购率。因此,我们可以看到“ add_to_cart_order”没有用,我不知道“ order_id”。 “重新排序”的值可以为“ 1”和“ 0”。
目前,我可以通过product_id来获得“ reordored”的计数]
SELECT product_id, COUNT(reordered) from train where reordered = '1' GROUP BY product_id;
以及带有]的产品的出现次数>
SELECT product_id, COUNT(*) from train GROUP BY product_id;
我尝试过
SELECT t1.product_id, COUNT(t1.product_id)/ (select COUNT(reordered) from train t2 where t2.reordered = '1' and t1.product_id=t2.product_id GROUP BY product_id) from train t1 group by t1.product_id;
但是需要花费很多时间(我不知道这是否是正确的请求,因为我还没有结果)
首先,这是我的表模式:order_id,product_id,add_to_cart_order,重新排序我的问题是计算产品的重新排序率。因此,我们可以看到“ add_to_cart_order”是没有用的,我不是...
这将为每个product_id
计算:火车cnt_prod
中的行数火车cnt_prod_reorder
中重新排序的行数
SELECT t1.product_id, COUNT(t1.product_id) as cnt_prd,
COUNT(case when t.1.reordered='1' then 1 else NULL end ) as cnt_prd_reord
from train t1 group by t1.product_id;
尝试这种优雅
这是您要寻找的吗?