如何提高mysql数据库查询语句的效率,表里的记录有上亿条,指定了索引还是很慢

如何提高mysql数据库查询语句的效率,表里的记录有上亿条,指定了索引还是很慢,第1张

首先分析为什么慢:1. 6个子查询,每个子查询都需要建立中间表;2,每个子查询都在做 group by, 重复;3 CASE WHEN 用不了索引,需要扫描所有列; 优化:CASE WHEN 逻辑合并,6个子查询合并为1个查询,做1次 group by,做 join,

第一种方法是将所有表的所有字段所对应的数据都查询出来,但是在项目实际应用中,表中数据很多,而你实际需要的只可能是一个或者几个字段,你可以想想如果每个表都有1条数据,无用的数据就占用了大量的资源,所以不推荐

第二种方法是在主表的基础上追加别的表的字段,这样你就可以只查询需要的内容,所占资源就相对的少了很多,尤其是数据量越大,较第一种的优势越明显


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7502074.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存