在 Redshift/PostgreSQL 中使用 Last_Value 窗口函数

格林

我有以下查询:

select
    x.value1,
    x.value2,
    y,
    last_value(y ignore nulls)
          over (order by x.value1, x.value2 rows unbounded preceding) as val

from table t

对于下表,

value1.x1   value2.x2    3
value1.x2   value2.x2
value1.x3   value2.x3    5
value1.x4   value2.x4
value1.x5   value2.x5
value1.x6   value2.x6    7
value1.x7   value2.x7

查询给出了输出

value1.x1   value2.x2    3     3
value1.x2   value2.x2          3
value1.x3   value2.x3    5     5
value1.x4   value2.x4          5
value1.x5   value2.x5          5
value1.x6   value2.x6    7     7
value1.x7   value2.x7

它正确地复制值直到最后一行。我不确定为什么它不会一直下​​降。“行前无界”不是要使用的正确框架吗?有人可以指出我的错误吗?不确定这是否也适用于 MySQL,但我也会对这样的解决方案感兴趣。

谢谢!

戈登·利诺夫

您的代码应该根据窗口规范执行您想要的操作。但是,另一种方法是使用lag()

select x.value1, x.value2, y,
       (case when y is not null then y
             else lag(y ignore nulls) over (order by x.value1, x.value2)
        end) as val
from table t;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么“ LAST_VALUE(birthdate)”窗口函数子句与“ FIRST_VALUE(birthdate)”相比有必要?

来自分类Dev

SQLAlchemy核心:为PostgreSQL创建一个last_value窗口函数

来自分类Dev

雪花窗函数last_value和max

来自分类Dev

如何结合使用BigQuery LAST_VALUE()和ARRAY_AGG()

来自分类Dev

如何在MS SQL中将last_value与group by with count一起使用?

来自分类常见问题

如何在Spark / Cala中使用窗口函数使用countDistinct?

来自分类Dev

如何使用VBA在windowapi中使用findwindow函数查找窗口?

来自分类Dev

如何在Spark / Cala中使用窗口函数使用countDistinct?

来自分类Dev

窗口函数不能在另一个窗口函数或集合中使用

来自分类Dev

在Django ORM中使用postgresql窗口函数的干净方法?

来自分类Dev

$(this)在内部函数中使用时指向窗口对象

来自分类Dev

如何在Spark中使用窗口函数过滤数据

来自分类Dev

如何在函数中使用{bootstrap}弹出窗口

来自分类Dev

何时以及如何在PostgreSQL中使用窗口函数?

来自分类Dev

如何在构造函数中使用@Value?

来自分类Dev

使用窗口函数的UPDATE列

来自分类Dev

在“窗口”中使用Apply

来自分类Dev

用户last_value填写日期

来自分类Dev

等待序列获取last_value

来自分类Dev

Last_Value返回当前值

来自分类Dev

SQL窗口函数不能在另一个窗口函数或聚合的上下文中使用

来自分类Dev

错误:不能在另一个窗口函数或集合的上下文中使用窗口函数

来自分类Dev

在函数中使用“使用”?

来自分类Dev

在函数中使用“使用”?

来自分类Dev

使用Spark数据框,在窗口函数中使用间隔的示例

来自分类Dev

当窗口/分区与正向填充一起使用时,将条件添加到pyspark sql中的last()函数

来自分类Dev

pyspark中的first_value窗口函数

来自分类Dev

窗口函数first_value的异常行为

来自分类Dev

发现值中使用了哪个VALUE构造函数

Related 相关文章

  1. 1

    为什么“ LAST_VALUE(birthdate)”窗口函数子句与“ FIRST_VALUE(birthdate)”相比有必要?

  2. 2

    SQLAlchemy核心:为PostgreSQL创建一个last_value窗口函数

  3. 3

    雪花窗函数last_value和max

  4. 4

    如何结合使用BigQuery LAST_VALUE()和ARRAY_AGG()

  5. 5

    如何在MS SQL中将last_value与group by with count一起使用?

  6. 6

    如何在Spark / Cala中使用窗口函数使用countDistinct?

  7. 7

    如何使用VBA在windowapi中使用findwindow函数查找窗口?

  8. 8

    如何在Spark / Cala中使用窗口函数使用countDistinct?

  9. 9

    窗口函数不能在另一个窗口函数或集合中使用

  10. 10

    在Django ORM中使用postgresql窗口函数的干净方法?

  11. 11

    $(this)在内部函数中使用时指向窗口对象

  12. 12

    如何在Spark中使用窗口函数过滤数据

  13. 13

    如何在函数中使用{bootstrap}弹出窗口

  14. 14

    何时以及如何在PostgreSQL中使用窗口函数?

  15. 15

    如何在构造函数中使用@Value?

  16. 16

    使用窗口函数的UPDATE列

  17. 17

    在“窗口”中使用Apply

  18. 18

    用户last_value填写日期

  19. 19

    等待序列获取last_value

  20. 20

    Last_Value返回当前值

  21. 21

    SQL窗口函数不能在另一个窗口函数或聚合的上下文中使用

  22. 22

    错误:不能在另一个窗口函数或集合的上下文中使用窗口函数

  23. 23

    在函数中使用“使用”?

  24. 24

    在函数中使用“使用”?

  25. 25

    使用Spark数据框,在窗口函数中使用间隔的示例

  26. 26

    当窗口/分区与正向填充一起使用时,将条件添加到pyspark sql中的last()函数

  27. 27

    pyspark中的first_value窗口函数

  28. 28

    窗口函数first_value的异常行为

  29. 29

    发现值中使用了哪个VALUE构造函数

热门标签

归档