我有一个函数的输入值作为时间戳。我想找到前一天的确切时间戳的特定列(这里是impacted_users
)的值(我还需要该时间戳值之前和之后一个小时的值)。基于此,我想对前一天的这些值取平均值。avg_val_column = avg(val_at_one_hr_before,val_at_one_hr_before,value_at_given_timestamp_yesteday)
我对当前时间戳的查询如下所示,但我不确定我需要做什么来获取前几天的值(以及获取这些值的平均值)时间戳格式:2022-10-29 11:00:00
要为impacted_users
-〉2022-10-28 10:00:00
+ 2022-10-28 11:00:00
+ + 2022-10-28 12:00:00
获取的值
WITH rc_pt AS (
SELECT
procedure_type_rc.timestamp AS timestamp,
procedure_type_rc.rc_id AS rc_id,
procedure_type_rc.pt_id AS pt_id,
procedure_type_rc.impacted_users AS impacted_users,
-- find avg. of impacted users for previous days values*********
tmop_comb.stage AS stage
FROM
pt_rc AS procedure_type_rc
INNER JOIN tmop_comb ON procedure_type_rc.rc_id = tmop_comb. "RC"
WHERE
procedure_type_rc.timestamp = '{}'
AND tmop_comb.stage = 1
AND procedure_type_rc.rc_id IN '{}'
)
SELECT
*
FROM
rc_pt ''.format(self.timestamp, self.nw_rc_ad_tuple)
1条答案
按热度按时间zf9nrax11#
我猜你的结构是什么,并使用my own test data,但这是为了说明的想法:
在中格式化为参数的
'2022-10-28 11:00:00'
的所有执行严修。