Mysql分类聚合查询的优化方法和体会总结

Mysql分类聚合查询的优化方法和体会总结

需求

按用户分类查出每个用户得到积分最多的2天是哪两天,分别获得多少积分。

数据源

用户积分表

用户表

原本的查询方式通过在业务程序中遍历查询到的所有用户的ID,对每一个用户进行查询得到积分最多的2天的记录, 再对所有查询到的数据进行整合。

查询结果

错误原因

需要多次查询数据库造成数据库开销过大

业务程序需要多次对查询的数据进行遍历整合,影响程序效率

优化

优化查询语句,一次查询得到结果

查询结果

通过对照查询记录,可以看出,本次查询将将之前的多次查询成功优化成只查询一次SQl即获得了所有的数据。

总结

在开发过程中应尽量多的考虑数据操作的方式,采纳最优的方方式。

SQl语句的优化对于程序的性能优化是非常巨大的,所以尽量考虑把SQL优化到较为优雅的程度

多站在SQL的角度去快乐编程^_^

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180805G0QOLC00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券