本文简要介绍 python 语言中 pyflink.table.Table.flat_aggregate
的用法。
用法:
flat_aggregate(func: Union[pyflink.table.expression.Expression, pyflink.table.udf.UserDefinedAggregateFunctionWrapper]) → pyflink.table.table.FlatAggregateTable
执行全局flat_aggregate,而不使用group_by。 flat_aggregate 采用返回多行的
TableAggregateFunction
。在flat_aggregate 后使用选择。例子:
>>> table_agg = udtaf(MyTableAggregateFunction()) >>> tab.flat_aggregate(table_agg(tab.a).alias("a", "b")).select(col('a'), col('b')) >>> # take all the columns as inputs >>> class Top2(TableAggregateFunction): ... def emit_value(self, accumulator): ... yield Row(accumulator[0]) ... yield Row(accumulator[1]) ... ... def create_accumulator(self): ... return [None, None] ... ... def accumulate(self, accumulator, *args): ... args[0] # type: Row ... if args[0][0] is not None: ... if accumulator[0] is None or args[0][0] > accumulator[0]: ... accumulator[1] = accumulator[0] ... accumulator[0] = args[0][0] ... elif accumulator[1] is None or args[0][0] > accumulator[1]: ... accumulator[1] = args[0][0] ... ... def get_accumulator_type(self): ... return DataTypes.ARRAY(DataTypes.BIGINT()) ... ... def get_result_type(self): ... return DataTypes.ROW( ... [DataTypes.FIELD("a", DataTypes.BIGINT())]) >>> top2 = udtaf(Top2()) >>> tab.flat_aggregate(top2.alias("a", "b")).select(col('a'), col('b'))
参数:
func- 用户定义的表聚合函数。
返回:
结果表。
版本 1.13.0 中的新函数。
相关用法
- Python pyflink Table.flat_map用法及代码示例
- Python pyflink Table.fetch用法及代码示例
- Python pyflink Table.full_outer_join用法及代码示例
- Python pyflink Table.filter用法及代码示例
- Python pyflink Table.intersect_all用法及代码示例
- Python pyflink Table.right_outer_join用法及代码示例
- Python pyflink Table.distinct用法及代码示例
- Python pyflink Table.where用法及代码示例
- Python pyflink Table.drop_columns用法及代码示例
- Python pyflink Table.execute用法及代码示例
- Python pyflink Table.minus_all用法及代码示例
- Python pyflink Table.over_window用法及代码示例
- Python pyflink Table.union_all用法及代码示例
- Python pyflink Table.left_outer_join_lateral用法及代码示例
- Python pyflink Table.add_or_replace_columns用法及代码示例
- Python pyflink Table.join用法及代码示例
- Python pyflink Table.minus用法及代码示例
- Python pyflink Table.execute_insert用法及代码示例
- Python pyflink Table.limit用法及代码示例
- Python pyflink Table.offset用法及代码示例
- Python pyflink Table.group_by用法及代码示例
- Python pyflink Table.add_columns用法及代码示例
- Python pyflink Table.rename_columns用法及代码示例
- Python pyflink Table.to_pandas用法及代码示例
- Python pyflink Table.union用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 pyflink.table.Table.flat_aggregate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。