请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

MySQL 查询结果集过大时 怎么办

MySQL 查询结果集过大,而网络速度又很慢,反馈到前端的加载速度就非常慢,这种情况下,怎么处理合适。

正在回答 回答被采纳积分+3

1回答

Moody 2021-07-13 10:31:37

通常的做法是分多次查询,将大查询变成小查询。

但是你还要考虑一个问题:为什么前端一次需要这么多的数据?从用户交互的角度来说,一次性给前端太多数据是不太好的,在同一个界面里通常不会显示太多数据,所以可以尝试改进一下界面设计和产品设计,比如将大列表改为分页显示,这样查询太慢的问题也就解决了。

0 回复 有任何疑惑可以回复我~
  • 老师,我目前所在的项目就面临这样的问题。如果说分页查询后端需要对数据进行排序。几十万数据排序消耗时间并不比一次性查询来的更快,而且很耗内存。
    回复 有任何疑惑可以回复我~ 2021-09-15 00:36:05
  • 1.参考一下5-9节的内容,看看能不能改善。
    2.如果是用固定的几个字段排序的话,建议给这几个字段加个索引,尽量走索引覆盖,可以改善很多。
    3.如果不是固定字段,而是多个字段计算出来的顺序,建议加一列,存放多个字段的计算结果,并加索引。
    回复 有任何疑惑可以回复我~ 2021-09-15 09:33:49
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信