我想在DB2 LUW中计算脚本的运行时间。我需要赖特的代码,以获得开始时间和结束时间,然后返回差异。
select current timestamp as startdate from sysibm.sysdummy1;
-- my querys
select current timestamp as enddate from sysibm.sysdummy1;
select timestampdiff (enddate , startdate);发布于 2022-12-02 16:02:11
首先,您使用timestampdiff()不正确--请检查手册。
其次,在select中不能从零开始使用sysibm.sysdummy1;您似乎知道如何使用sysibm.sysdummy1,所以将同样的技术应用于您的运行时间计算。或者,您可以使用values语句。
但最糟糕的是,您没有将select current timestamp...查询的结果保存到任何地方,因此不能在以后引用它们。
如果不想编写SQL/PL代码,可以这样做:
create table t (starttime timestamp, endtime timestamp);
-- you could also declare a global temporary table instead
insert into t (starttime) values (current timestamp);
-- your statements
update t set endtime=current timestamp;
select timestampdiff(1, char(endtime-starttime)) as elapsed_microseconds from t;
drop table t; -- if it's not a temp tablehttps://stackoverflow.com/questions/74648046
复制相似问题