目标实现
1 a
1 b
2 a
2 c
转换为
1 a,b
2 a,c
package com.hive.udf;
//用法 select a,concat1(b,',') from concat_test group by a;
import org.apache.hadoop.hive.ql.exec.UDAF;
import org.apache.hadoop.hive.ql.exec.UDAFEvaluator;
public class Concat extends UDAF {
public static class ConcatUDAFEvaluator implements UDAFEvaluator{
public static class PartialResult{
String result;
String delimiter;
}
private PartialResult partial;
//init函数实现接口UDAFEvaluator的init函数。
public void init() {
partial = null;
}
//iterate接收传入的参数,并进行内部的轮转。其返回类型为boolean。
//接受传入的参数,并进行内部的轮转
public boolean iterate(String value,String deli){
if (value &