假如我现在有一个sql
select a.Id,b.Id,c.Id... from a
inner join b on a.Id = b.Id
inner join ...
这样一个sql,有很多很多的join和关联条件,这导致了查询速度降低太多。
我发现时间貌似全部都用在了索引检索上面。
请问像这样的sql有什么办法优化吗?
跪求思路!
这个问题有点类似:我做了一些不好的事情,如何避免被抓。
优化从来就不是一个纯粹的SQL问题,除非你确实写得很烂很烂。
1、表设计
2、代码实现
3、并发规模
4、硬件瓶颈
如果所有的优化都能在现有表结构上只修改SQL就能提升性能的话,那阿里的系统你都可以开发了。
1. 是否添加了相应的索引?
2. 可能你需要考虑一下你表的设计问题了。
后面加where过滤一下,减小表的体积,这样join关联的时候会快些
大叔说的就很简单了.
但你的数据库查询很复杂的时候.
你该考虑业务结构是不是有问题了.
建议提供完整的截图,目前截图部分的执行计划并没有大问题
– dudu 6年前