select current timestamp as startdate from sysibm.sysdummy1;
-- my querys
select current timestamp as enddate from sysibm.sysdummy1;
select timestampdiff (enddate , startdate);
首先,您错误地使用了timestampdiff()--请检查the manual。 第二,你不能在Db2中从无到有地select;您似乎知道如何使用sysibm.sysdummy1,因此可以将相同的技术应用于已用时间的计算。 但最糟糕的是,您没有将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 table
1条答案
按热度按时间bbuxkriu1#
首先,您错误地使用了
timestampdiff()
--请检查the manual。第二,你不能在Db2中从无到有地
select
;您似乎知道如何使用sysibm.sysdummy1
,因此可以将相同的技术应用于已用时间的计算。但最糟糕的是,您没有将
select current timestamp...
查询的结果保存到任何地方,因此以后无法引用它们。如果您不想编写SQL/PL代码,可以执行以下操作: