【SQL进阶】纯SQL也能实现小算法(辅助决策)计算商品重要度、是否需要及时补货

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/ChinaLiaoTian/article/details/102756774
select p_type,p_name, (p_view/view_avg)*0.3+(sales/sales_avg)*0.7 as weight 
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

猜你喜欢

转载自blog.csdn.net/ChinaLiaoTian/article/details/102756774