- 这个问题最难的地方就是变量的业务能力
- 其次值得注意是,直接使用JOIN连接两表计算特征时,由于JOIN会导致产品表的行数增加,从而通过聚合函数容易导致高估库存量,因此应先将销售表进行汇总各个产品的情况,然后再进行产品的连接并计算
SELECT style_id , ROUND(100*SUM(num)/(SUM(inventory) - SUM(num)), 2) AS 'pin_rate(%)' , ROUND(100*SUM(item_gmv)/ SUM(inventory * tag_price), 2) AS 'sell-through_rate(%)' FROM product_tb JOIN ( SELECT item_id ,SUM(sales_num) AS num ,SUM(sales_price) AS item_gmv FROM sales_tb GROUP BY item_id ) data1 USING(item_id) GROUP BY style_id