开发者社区 问答 正文

mysql在连多表的情况下where优化的问题。

screenshot
screenshot
这种情况下如何做到最优啊Orz。
全局连表得查10s,数据大概12w的样子。
screenshot
采用外连可以快一半的样子,但是感觉还不够快。
screenshot

展开
收起
蛮大人123 2016-02-13 13:53:12 2289 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    1、只联合查询变化频繁和结合紧密的数据,那种不太变化的数据,扔到一个key-value数组,在显示的时候用key显示关联的value。
    2、该冗余的数据冗余起来,比如在a表里放一个 c.name,就少了c这个联表查询。
    3、你给出的SQL中,最外层的括号f没必要,内层SQL就可以排序并得到想要的数据了。
    4、最后把精简过的SQL explain一下,给关键的列加上索引。

    2019-07-17 18:41:57
    赞同 展开评论