postsql的explain用法

来源:互联网 发布:做题软件 编辑:程序博客网 时间:2024/04/29 06:00

 

explain命令可以显示sql语句执行规划。

 

例子:

 

1、单独使用

 

miniblogonline=# explain select * from subscribes;                              
                                   QUERY PLAN                                   
---------------------------------------------------------------------------------
 Seq Scan on subscribes  (cost=100000000.00..100083468.30 rows=4810030 width=22)
(1 行)

 

其中cost中的第一个时间是返回第一行记录前的启动时间;第二个时间是返回所有记录的总时间。

 

 

 

2、与analyze结合使用

 

miniblogonline=# explain ANALYZE select * from subscribes ;                     
                                                             QUERY PLAN                                                            
-------------------------------------------------------------------------------------------------------------------
 Seq Scan on subscribes  (cost=100000000.00..100083468.30 rows=4810030 width=22) (actual time=0.024..1493.942 rows=4810030 loops=1)
 Total runtime: 2464.084 ms
(2 行)

 

ANALYZE 选项导致查询被实际执行,而不仅仅是规划。它在显示中增加了在每个规划节点内部花掉的总时间(以毫秒计)和它实际返回的行数。

 

可以看到有最终的总运行时间返回。

 

原创粉丝点击