適用於:
Databricks SQL
Databricks Runtime
傳回資料分割區內前一列的 expr 值。
語法
lag( expr [, offset [, default] ] ) [ IGNORE NULLS | RESPECT NULLS ] OVER clause
引數
-
expr:任何類型的表達式。 -
offset:指定偏移的選用INTEGER文字。 -
default:與 相同類型的expr表達式。 -
IGNORE NULLS或RESPECT NULLS:指定時IGNORE NULLS,會忽略任何expr值NULL。 預設值為RESPECT NULLS。 - OVER 子句:描述視窗的 子句。 請參閱:視窗函式。
退貨
結果類型符合 expr。
如果 offset 為正數,則該值是根據 OVER 子句中指定的 offset,從當前數據列前面的數據列產生的。
位移量為 0 時,使用目前列的值。
負位移會使用目前數據列後面的數據列值。
如果您未指定 offset ,則預設為 1,即緊接前一列。
如果分割區內沒有指定位移的數據列,則會使用指定的 default。
預設值 default 為 NULL。
您必須提供 ORDER BY 子句。
此函式與 同義 lead(expr, -offset, default)。
範例
> SELECT a, b, lag(b) OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 NULL
A1 1 1
A1 2 1
A2 3 NULL