我需要在plpgsql脚本中,为了多种目的(计算,显示和存储)获取变量中最后一个查询的执行时间,所以psql \timing
选项不是我想要的,因为我不能操纵结果时间。你知道是否有像#34; get diagnostics"命令,但执行时间(或解决)?:
get diagnostics my_var := EXECUTION_TIME;
我找不到除row_count
和result_oid
之外的任何内容...
答案 0 :(得分:5)
您可以在查询之前和之后比较clock_timestamp()
:
do $$
declare t timestamptz := clock_timestamp();
begin
perform pg_sleep(random());
raise notice 'time spent=%', clock_timestamp() - t;
end
$$ language plpgsql;
示例结果:
注意:花费的时间= 00:00:00.59173