Java 通过使用配置单元查询,我可以将表数据转换为复杂类型列表<;结构>;?
这是表格的详细信息Java 通过使用配置单元查询,我可以将表数据转换为复杂类型列表<;结构>;?,java,hadoop,hive,Java,Hadoop,Hive,这是表格的详细信息 Id Data a {"col1":"11.0","col2":30.0} a {"col1":"12.0","col2":10.0} b {"col1":"11.0","col2":20.0} b {"col1":"12.0","col2":25.0} b {"col1":"15.0","col2":25.0} c {"col1":"12.0","col2":15.0} c {"col
Id Data
a {"col1":"11.0","col2":30.0}
a {"col1":"12.0","col2":10.0}
b {"col1":"11.0","col2":20.0}
b {"col1":"12.0","col2":25.0}
b {"col1":"15.0","col2":25.0}
c {"col1":"12.0","col2":15.0}
c {"col1":"13.0","col2":16.0}
预期输出-按Id分组的数据结构列表
ID Data
a list[ {"col1":"11.0","col2":30.0},{"col1":"12.0","col2":10.0}]
b list[ {"col1":"11.0","col2":20.0},{"col1":"12.0","col2":25.0},{"col1":"15.0","col2":25.0}]
c list[ {"col1":"12.0","col2":15.0},{"col1":"13.0","col2":16.0}]
是否可能由配置单元支持的函数或需要编写任何用户定义函数。简短的回答是肯定的,前面有关于这一点的答案,请参见此处 但总而言之,如果您只有唯一的元素,则使用collect\u set,否则使用collect\u list(仅适用于配置单元0.13+),此外,它是一个标准的分组查询