Netezza SQL: 在 window 帧中指定一个偏移量

Netezza SQL: Specify an offset in a window frame

在为窗口分析函数制作 "frame" 时,可以指定行数到 "look back" 以上。例如,以下将获得一个家庭过去 26 周的每周销售额。

,sum(sales) over (partition by household_id order by week_id rows 26 preceding) as x26

但是...如果您想回头(或向前)偏移量怎么办?例如,如果对于第 n 周,您想要第 n 周之前 8 周结束的 26 周的销售额?当我打字的时候,我突然想到我可以分几个部分来做。即,

 ,sum(sales) over (partition by household_id order by week_id rows 34 preceding) as x34
 ,sum(sales) over (partition by household_id order by week_id rows 8 preceding) as x8

...并有 trailing26_offeset8 = x34 - x8

嗯...很高兴我问了。但是无论如何,您知道是否有一项功能可以让我在分区规范本身中指定偏移量吗?

谢谢!

尝试在 window 范围规范中使用 between

sum(sales) over (partition by household_id
                 order by week_id
                 rows between 34 preceding and 8 preceding
                ) as x34