PostgreSQL10 OLAP使用行

时间:2018-05-12 12:20:16

标签: sql postgresql olap

''         ,但是右边有'行2前面的'和之前的2个和之后的2个'行? 而且,我如何纠正'之后的第2行? ? 谢谢你的帮助

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

使用窗框时,请始终包含框架的两端。

框架rows 2 following含糊不清。您的意思是rows between current row and 2 following还是rows between 2 following and unbounded following?每个都有问题。

第一个是不允许的,因为帧开始必须出现在帧结束之前:

  

限制是frame_start不能是UNBOUNDED FOLLOWING,   frame_end不能是UNBOUNDED PRECEDING,而是frame_end选项   不能出现在上面列表中的早于frame_start选项。

此外,当仅包含帧的一个时间规范时,它被包括作为帧开始。

因此,Postgres将2 following解释为框架的开头。但是,结尾的默认值是当前行,因此它被解释为rows between 2 following and current row。因此它产生的错误消息:

  

42P20:从下一行开始的帧不能以当前行结束