纯SQL实现小算法(辅助决策)_ 计算商品评分、及时补货

分别把 计算各自的 
一、点击量/点击量均值  
二、销售量/销售量均值

二者相加,能够获得一个简单评分

又有问题了,猪肉的评分不该该比五花肉多。

所以咱们要加入简单的权重,譬如点击量评分占30%。销售量评分占70%
select p_type,p_name, (p_view/view_avg)*0.3+(sales/sales_avg)*0.7 from (
select a.*,b.sales_avg,c. view_avg  from (select   p_type,a.p_name,a.p_view, IFNULL(b.p_sales,0) as sales from products a  
   LEFT JOIN products_sales b
on a.p_id=b.p_id
GROUP BY  a.p_type,a.p_name order by a.p_type desc, a.p_view desc 
) a ,
( select p_type,round(sum(sales)/count(*),0) as sales_avg from ( select  p_type, a.p_name,a.p_view, IFNULL(b.p_sales,0) as sales from products a  
   LEFT JOIN products_sales b
on a.p_id=b.p_id
GROUP BY  a.p_type,a.p_name order by a.p_type desc, a.p_view desc ) c
where c.sales>0
GROUP BY p_type
)
b,
(select p_type,round(sum(p_view)/count(*),0) as view_avg from products GROUP BY p_type )
c
where a.p_type=b.p_type  and a.p_type=c.p_type ) aa
相关文章
相关标签/搜索