全部產品
Search
文件中心

Realtime Compute for Apache Flink:LAST_VALUE

更新時間:Jul 13, 2024

本文為您介紹如何使用LAST_VALUE函數,返回指定資料流的最後1條非NULL資料。

使用限制

僅Realtime Compute引擎VVR 3.0.0及以上版本支援LAST_VALUE函數。

文法

T LAST_VALUE(T value)
T LAST_VALUE(T value,BIGINT order)

入參

參數資料類型說明
value任意參數類型 指定資料流。
orderBIGINT根據order判定LAST_VALUE所在的行,取order值最大的記錄作為LAST_VALUE。
重要 所有輸入參數需要為相同的資料類型。

樣本

  • 測試資料
    表 1. T1
    a(BIGINT)b(INT)c(VARCHAR)
    11Hello
    22Hello
    33Hello
    44Hello
    55Hello
    66Hello
    77NULL
    87Hello World
    98Hello World
    1020Hello World
  • 測試語句
    SELECT c,LAST_VALUE(b) 
    OVER (PARTITION BY c ORDER BY PROCTIME() RANGE UNBOUNDED PRECEDING) AS var1
    FROM T1;
  • 測試結果
    c(VARCHAR)var1(INT)
    Hello1
    Hello2
    Hello3
    Hello4
    Hello5
    Hello6
    NULL7
    Hello World7
    Hello World8
    Hello World20