我在資料框中有一列,如下所示
-------------------
| timestampCol|
-------------------
|2020-11-27 00:00:00|
|2020-11-27 00:00:00|
-------------------
我需要根據這個日期過濾資料,我只想獲得最近 6 個月的資料,有人可以建議我該怎么做嗎?
uj5u.com熱心網友回復:
dataset.filter(dataset.col("timestampCol").cast("date")
.gt(add_months(current_date(),-6)));
這將過濾所有超過 6 個月的 timestampCol 值。
uj5u.com熱心網友回復:
根據資料集架構,您可能需要將值轉換為日期。如果是日期,則直接將其與 java.sql.Timestamp 實體進行比較。
val someMomentInTime =
java.sql.Timestamp.valueOf("yyyy-[m]m-[d]d hh:mm:ss")
val df: Dataframe =
???
df.filter(col("timestampCol") > someMomentInTime) //Dataframe is Dataset[Row]
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/361522.html
上一篇:Scala是否有“Scala方式”來使用或設定變數?
下一篇:錯誤:陳述句的非法開始(此處不允許使用修飾符)privatedefhasNoDuplicates(line:Array[Int])=....inScala
