用于计算两种不同条件的平均值的SQL

问题描述 投票:-2回答:1

需要计算呼叫中心代表收到潜在客户的响应时间以及他接受跟进所需的时间

计算所需的时间让代表看到'NEW'导联和'Follow_up'就可以了

表T

ID,T_NAME,CRTE_TIMESTMP

123,NEW,2019-01-01-00.15.32.2820000

456,NEW,2019-01-01-00.16.23.4320000

123,FOLLOW-UP,2019-01-02-15.31.48.1640000

**结果应该是**

ID,TIME_TOOK

123 , (2019-01-01-00.15.32.2820000) -(2019-01-02-15.31.48.1640000 )

timestamp db2 condition difference
1个回答
0
投票

可能看起来像这样

with temp as (
select ID
     , T_NAME
     , CRTE_TIMESTMP,
       lag(CRTE_TIMESTMP) over (partition by id order by CRTE_TIMESTMP) as CRTE_TIMESTMP_lag
from t
) 
select ID
     , hours_between (CRTE_TIMESTMP,CRTE_TIMESTMP_lag ) as time_took
  from temp
 where t_name = 'FOLLOW-UP'

根据您需要的粒度,您还可以使用Db2 11中的seconds_between或days_between或任何其他提供的函数。

© www.soinside.com 2019 - 2024. All rights reserved.