获取配置单元中列值及其计数的不同组合

flseospp  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(291)

我有一个包含两列的表,name和value。我想计算每个组合在Hive中重复的次数

Alex  Biology
          Joe  Chemistry
          Alex  Physics
          Alex  Physics
          Joe   Physics
          Joe   Physics

我希望输出像

Alex  Biology  1
          Joe  Chemistry 1
          Alex  Physics  2
          Joe   Physics  2

我尝试了一个类似sql的count查询,从tbl中选择不同的名称、值、count(*),但是失败了,出现了一个错误“not yet supported place for udaf count”,我尝试使用collect\u set,但也没有成功

select x.name, x.value
           , num_arr
       from (
       select *
          , count(collect_set(name) over (partition by value)) num_arr
           from count_unique ) x
ajsxfq5m

ajsxfq5m1#

你可以用简单的 group_by 函数并计算组合。试试这个

select x.name, x.value, count(*) from count_unique group by x.name,x.value;

相关问题