Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 滚动日期期间的平均值_Sql_Teradata - Fatal编程技术网

Sql 滚动日期期间的平均值

Sql 滚动日期期间的平均值,sql,teradata,Sql,Teradata,我有4个维度,其中一个是日期。我需要计算每个日期,过去30天的平均值,每个维度值 我曾尝试以以下形式通过4维对分区进行平均计算: SELECT Date, Produce,Company, Song, Revenues, Average(case when Date between Date -Interval '31' day and Date - Interval '1' Day then Revenues else null End) over (partition by Date,Com

我有4个维度,其中一个是日期。我需要计算每个日期,过去30天的平均值,每个维度值

我曾尝试以以下形式通过4维对分区进行平均计算:

SELECT
Date, Produce,Company, Song, Revenues,
Average(case when Date between Date -Interval '31' day and Date - Interval '1' Day then Revenues else null End) over (partition by Date,Company,Song,Revenues order by Date) as "Running Average"
From 
Base_Table
我尝试的每次聚合都只得到空值。 谢谢你的帮助。谢谢你可以在下面试试-

SELECT
Date, Produce,Company, Song, Revenues,
Average(Revenues) over (partition by Company,Song rows between 30 preceding and current row) as "Running Average"
From 
Base_Table

... 并通过Perfect从
分区中删除
日期
。非常感谢@fa06如果没有order by子句,您如何知道结果是指过去x天?我认为您需要包括
order by DESC