如何使用psql计时SQL查询?


Answers:


321

只需输入以下命令即可打开计时:

\timing


1
从bash起,“-c”选项psql不允许进行此设置。您可以使用以下方法执行此操作: psql --o /dev/null <<EOF \timing select 1 EOF
3manuek '16

6
或做psql -c '\timing' -c 'select 1'
cdmckay


12

\timing如果您要连接到远程服务器,则返回的时间还包括网络延迟。

如果您不希望这样做,也不需要查询输出,最好使用EXPLAIN ANALYZE,它会输出查询计划以及计划者的估算值和实际执行时间。

例如, EXPLAIN ANALYZE SELECT foo from bar ;


1
...唯一的问题是您没有收到正常的查询输出。
dezso

2
使用的explain analyze收益时间大约是使用时的两倍\timing,这与根据此处有关网络延迟的评论所期望的相反。我怀疑正常执行analyze会增加查询时间。根据文档,我认为这EXPLAIN (ANALYZE, TIMING OFF) SELECT foo FROM bar将为您提供更多有用的时序信息。有关详细信息,请参见postgresql.org/docs/9.6/static/sql-explain.html
larsk's
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.