为什么“第2行跟随”是错误的,而“第2行在前”和“前2行与后2行之间”是正确的?还有,我怎样才能纠正“第二行跟随”呢?感谢您的帮助


发布于 2018-05-12 20:31:36
使用窗框时,请始终包括窗框的两端。
帧rows 2 following不明确。你是指rows between current row and 2 following还是rows between 2 following and unbounded following?这些都有问题。
第一个是不允许的,因为frame starts必须出现在frame ends之前:
限制是frame_start不能是UNBOUNDED,frame_end不能是UNBOUNDED,并且frame_end选项不能早于frame_start选项出现在上面的列表中。
此外,当仅包括帧的一个时间规范时,它被包括为帧开始。
因此,Postgres将2 following解释为帧的开始。但是,end的默认值是当前行,因此它被解释为rows between 2 following and current row。因此,它会生成以下错误消息:
42P20:从后一行开始的帧不能以当前行
结束
https://stackoverflow.com/questions/50306177
复制相似问题