赞
踩
需求:查询订单中出单最多的商品名
当时写的sql:
SELECT max(t.num), t.NAME, t.spu FROM ( SELECT count(1) AS num, NAME, spu FROM user_order_info WHERE user_id = 6 GROUP BY spu ) t
内部查询结果为这个,这时还是我想要的,但是整体查询如下:
这就乱了,虽然也可以查询出最大num,但是数值和其他自动根本对应不上,因为group by返回分组后的组内第一条数据信息,max函数对应的是最大数量。
解决方法: 按max的量进行倒序排列,输出第一列的值就是想要的值。
但是还有一个问题就是如果统计出的单量一致的情况,这两条数据就会随机出
解决方法就是在排序时多加一个排序字段,让其固定
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。