【问题标题】:How to insert \timing values to tables?如何将 \timing 值插入到表中?
【发布时间】:2019-05-20 18:59:24
【问题描述】:

我正在寻找一种如何将 \timing 结果插入表的方法。 例如,当我执行查询时,我想将执行时间结果插入到表中。

我想写程序,但是没有用。

CREATE PROCEDURE check_time() 
AS $$
DECLARE
  StartTime timestamptz;
  EndTime timestamptz;
  Delta double precision;
BEGIN
    StartTime := clock_timestamp();
    select count(*) from pracownicy;
    EndTime := clock_timestamp();
    Delta := 1000 * ( extract(epoch from EndTime) - extract(epoch from StartTime) );
    INSERT INTO czas(id_czas, wynik) VALUES (nextval('czas_sequence'), Delta);
END ;
$$
LANGUAGE plpgsql ;

【问题讨论】:

  • 你得到的错误是什么?
  • 错误:查询没有结果数据的目的地 PODPOWIEDŹ:如果要丢弃 SELECT 的结果,请改用 PERFORM。 KONTEKST:PL/pgSQL 函数 check_time() 在 SQL 语句的第 8 行
  • 那么您是否按照建议改用PERFORMstackoverflow.com/…

标签: java sql postgresql


【解决方案1】:

如果您想跟踪查询性能,您可以只使用 pg_stat_statements 扩展名(它还检测具有不同常量的相同查询)。

【讨论】:

  • 感谢您的提示。它对我的项目非常有用和有帮助!
猜你喜欢
  • 2019-05-01
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-04
  • 1970-01-01
  • 2016-03-23
相关资源
最近更新 更多