如何计算sparkDataframe中的小时计数(按时间戳类型分组)?

8tntrjer  于 2021-07-12  发布在  Spark
关注(0)|答案(1)|浏览(359)

对于Dataframe df1 哪里 col1 属于类型 DateType ,我做了以下操作来获得每日计数。

val df1_new=df1.groupBy("col1").count()

但是,对于我的Dataframe df2 哪里 col2 属于类型 TimestampType ,我想得到每小时的计数。但是复制上面的代码,会导致每个时间戳都有单独的计数,甚至相差一秒钟。
我应该做什么来实现每小时的计数 df2 ?

bttbmeg0

bttbmeg01#

你可以用 date_trunc 要将时间戳截断为小时级别:

val df2_new = df2.groupBy(date_trunc("hour", col("col2"))).count()

相关问题