3
我需要在火花中實現滯後函數;這是我能夠做到像下面 (從蜂巢/ TEMP火花表中的一些數據)帶參數爲動態的火花滯後函數
說出DF有這些行:
lagno:value
0, 100
0, 200
2, null
3, null
其中第一列是你想實際的滯後數使用,第二欄是實際值。
當我運行此查詢它的工作原理:
DataFrame df;
DataFrame dfnew=df.select(
org.apache.spark.sql.functions.lag(df.col("value"), 1).over(org.apache.spark.sql.expressions.Window.orderBy(new1.col("value"))));
這意味着,如果硬編碼滯後值沒有,它工作正常。
然而,如果我通過了滯後值作爲參數它不工作:
DataFrame dfnew=df.select(
org.apache.spark.sql.functions.lag(df.col("value"),df.col("lagno").over(org.apache.spark.sql.expressions.Window.orderBy(new1.col("value"))));
我需要類型轉換山坳類型的參數爲整數?
@ LostlnOverflow..yeah ..我做了與案件..since我lagno同樣期待50多個這樣我可能會寫50個conditions..Is有什麼辦法可以一有UDF其應採取lgno col的值,並返回整數..但我是暫定的,如果這是可能的。 – kre