【发布时间】:2018-01-04 10:20:14
【问题描述】:
我正在尝试对数据集执行以下操作,以对列消耗进行分组和聚合以加起来。但这不适用于它为 RelationalGroupedDataset 所说的普通数据集。如何在正常数据集中实现以下操作
dataset.select.(col("col1"),col("col2"),col("expend")).groupBy(col("col1"),col("col2"),col("expend")).agg(sum("expend"))
SQL 查询看起来像
select col1,col2,SUM(expend) from table group by col1,col2
当我尝试此代码时,列会重复。
dataset.columns() 给我[col1,col2,expend,expend] 的方法对吗?
【问题讨论】:
-
能否提供错误信息?
-
@ShankarKoirala 我得到了重复的 cols Shankar
-
@ShankarKoirala 你想在这里加点什么吗?
-
您是否要对
col1 and col2进行分组并对expend求和?? -
是的@ShankarKoirala 假设我有两行的数据
(item1,item2,4,4)和(item1,item2,5,5)我希望它被分组为(item1,item2,9,9)这就是我想要的结果。
标签: java apache-spark group-by aggregate-functions