答案 0 :(得分:0)
类似的事情应该起作用:
SELECT number_week,
name,
LAG(number_week, 1, number_week) OVER (PARTITION BY name ORDER BY number_week) as before_last_number_week
FROM t1;
这利用了Lag()
窗口函数。 “窗口”是一组记录,可以有选择地排序。在这里,我们按Name
对记录进行分组(所以有两个组/窗口),然后按week_number
对记录进行排序。然后使用Lag()
选择先前记录的week_number(在该窗口中)。 Lag()
可以采用默认值,因此我们指定默认值为当前记录的week_number
。