如何用SQL查询平均小时净利润最高的商品名称
获取对应最高平均小时净利润的商品名称
你可以通过两种常见方式实现需求:
方法一:排序后取首条(适合唯一最高值场景)
直接按商品分组计算平均利润,按平均利润降序排序后取第一条,就能同时得到商品名称和对应的最高平均利润:
SELECT item, AVG(net_profit) AS avg_net_profit FROM saved_data GROUP BY item ORDER BY avg_net_profit DESC LIMIT 1;
方法二:关联子查询(支持多个并列最高值)
如果存在多个商品平均利润同为最高的情况,用这种方法可以返回所有符合条件的商品:
SELECT item, AVG(net_profit) AS avg_net_profit FROM saved_data GROUP BY item HAVING AVG(net_profit) = ( SELECT MAX(avg_net_profit) FROM ( SELECT AVG(net_profit) AS avg_net_profit FROM saved_data GROUP BY item ) AS sub_query );
内容的提问来源于stack exchange,提问作者LowBand
相关产品推荐
相关产品推荐

