这里在clickhouse里面的explain的话,主要是显示需要执行的sql计划。一般的使用方式是:
explain select * from table
上诉这种sql在几乎都有使用sql规范的数据库都好使,当然在clickhouse里面也好使,但是这里我们要单独提一下clickhouse里面explain的特色。也就我们添加不同的关键字查看的效果。关于在clickhouse里面的关键字有:
AST:用于查看语法树。 SYNTAX:用于查询ClickHouse优化后的语法。 PLAN:用于查看执行计划,默认值。 PIPELINE:用于查看PIPELINE计划,相对于PLAN更加详细。
下面我们演示一下:
1)使用AST关键词
explain AST select * from teachers ARRAY JOIN classid;
执行之后效果图如下:
这里显示所有的是整个sql的语法树信息,涉及到每一个层级。
2)使用SYNTAX关键词
这里主要是显示优化后的sql语句,这里遇到写一些特别复杂的sql的时候,我们可以使用此关键词来优化下sql,示例如下:
explain SYNTAX select * from teachers ARRAY JOIN classid;
3)使用PLAN关键词
这里的话就是查看sql的执行计划,这里等同于不写plan关键词的效果,示例如下:
explain PLAN select * from teachers ARRAY JOIN classid; 以上sql效果等同于 explain select * from teachers ARRAY JOIN classid;
4)使用PIPELINE关键词
这里使用PIPELINE关键词,主要用于查看PIPELINE计划,比使用PLAN关键词能看到更多的信息,示例如下:
以上是在clickhouse里面使用explain的一些特殊关键词,在使用的时候有帮助。
还没有评论,来说两句吧...