0
所以,我有這個查詢,我需要「價值」的平均值。我需要這個連接,因爲表中有基於批量加載時間的版本 - 所以同一年/月可以有多個版本,但我只需要最新版本。我在這個OVER例子上需要一個子查詢嗎?
select *,
avg(value) over (
order by YEAR, MONTH
ROWS 11 preceding) as averageValue
from
(
SELECT
c.YEAR,
c.MONTH,
PRODUCT,
value
FROM
db.table c
join (
select year, month, max(version) as version
from db.table
group by year, month
) v
on c.year = v.year
and c.month = v.month
and c.version = v.version
) a
order by year desc, month desc
我真的需要把我的主查詢作爲子查詢,獲取字段的AVG()超過()?如果我嘗試做直上主查詢,所有我得到的全部價值,而不是過去的十二個月所需的平均...這裏
上傳失敗的查詢過。 – Paolo
hm ......我認爲我遇到的問題是OVER子句中的順序......我只重試了幾乎相同的查詢,但是使用DESC順序重複了主查詢中的平均值,現在它似乎可以工作... –