First_Value或者Last_Value 存在bug

Viewed 46

select region,segmentation,sales_amount,
first_VALUE( sales_amount ) OVER( PARTITION BY region ORDER BY field(segmentation, '公司','消费者','小型企业') ) first_sales_amount,
LAST_VALUE( sales_amount ) OVER( PARTITION BY region ORDER BY field(segmentation, '公司','消费者','小型企业') ) last_sales_amount
from(
select region,segmentation,sum(sales_amount) sales_amount from db_examples.t_examples_supermarket2021
group by region,segmentation
) x
ORDER BY field(region, '东北','华北','华东','西北','西南','中南') ,
field(segmentation, '公司','消费者','小型企业')

统计各地区下,细分的销售额及其第一个、最后一个销售额。发现第一个或者最后一个数据错误。

2 Answers

这个看着没啥问题,RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
image.png
你是不是想要的是last2 的结果?