SELECT top 10 CusName,
SUM(monOutMoney) AS totalOutPrice,
SUM(monIntoMoney) AS totalInPrice
FROM vCardUseRecord
WHERE
intCompanyID = 8
AND intUseType = 3
GROUP BY CusName
ORDER BY totalOutPrice DESC
vCardUseRecord是个视图,通过视图可以查询出总共13W条数据
现在从这13W条数据里面执行上面的SQL语句居然高达20秒以上
如果去掉order by语句,执行效率一下就上来了,达到毫秒级的
但是我肯定没有办法去掉order语句啊
因为我想返回支出金额最高的前10位,
如果不排序,我如何知道返回的是前10位?
如果去掉TOP,保留order 执行效率基本和加上top一致,没有任何优势
请大侠们帮忙想个办法优化一下啊,实在想不出来办法了啊
月关宝盒
莫回无
波斯汪
慕标5832272
慕姐8265434
RISEBY
缥缈止盈
一只甜甜圈
相关分类