善于利用SQLexplainSQL调整优化的必经之路。但是遇到复杂的SQL,查看explain结果也是有点困难的。比如这样的:

好在很多数据库的客户端都提供了图形化的表现形式,比如PostgreSQLpgAdmin4就能看到如下效果:

不过如果有个工具,能够hold住所有主流的关系型数据库的话,就更嗨皮了。答案就是IntelliJ IDEA。如果你还没有尝试过其自带的Database功能的话,推荐现在就试一下。在屏幕右侧应该能找到。

只需要按照向导添加相应的数据库连接就好了。不过这个功能免费的社区版是没有的。
创建完数据库链接后,通过此按钮打开SQL Console窗口

然后在里面就可以愉快的编写SQL了。
先来一段:

现在我们可以尝试通过IntelliJ IDEA执行一次explain了。

  • 先把光标移动到需要explainSQL
  • 右键呼出菜单,找到 执行之
  • 就能看到效果了
  • 点击Show Visualisation可以呼出图形化展示
  • 如果觉得这个功能实用的话,可以给它设置一个快捷键,方法如下
    • 呼出Find Action...窗口(快捷键:⇧⌘A),在Help菜单下能找到
    • 搜索到explain
    • 按快捷键⌥↩︎,或者windows下的alt+回车
    • 就可以设置一个快捷键了