flink-user-zh mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From godfrey he <godfre...@gmail.com>
Subject Re: Flink sql count 多个属性的问题
Date Wed, 26 Feb 2020 14:59:14 GMT
hi, 你看到的 select count(distinct a, b) from mytable 单元测试能通过,应该是只测试
logical
plan,当前在生成 physical plan的时候,显示的禁用了多个字段

Bests,
Godfrey

apache22 <apache22@163.com> 于2020年2月26日周三 下午6:56写道:

> 我的经验:
> count(distinct 只支持单字段)   ,  distinct  a,b 是可以的
> 有一个解决方式:count(distinct  concat(a,b))
>
>
> | |
> apache22
> |
> |
> apache22@163.com
> |
> 签名由网易邮箱大师定制
> 在2020年2月26日 18:21,小旋锋<whirlys@qq.com> 写道:
> 大家好:
> &nbsp; &nbsp; &nbsp; &nbsp; 我在flink官方文档上看到内置聚合函数count的函数头是这样的
> &nbsp; &nbsp; &nbsp; &nbsp; count([all] Expression | distinct Expression1
> [, Expression2])
> &nbsp; &nbsp; &nbsp; &nbsp; 所以它应该可以对多个属性进行distinct去重,而且我在源码的单元测试里也看到有几个用例
> select count(distinct a, b) from mytable,并且是可以运行通过的
> &nbsp; &nbsp; &nbsp; &nbsp; 但是我自己写sql却运行不起来,报异常&nbsp;
codegenexpression.
> No matching accumulate methods for Aggregation function.
> ......CountAggFunction with Parameters (Java.lang.String, java.lang.Long)
> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Flink1.8和1.9都无法运行,请问这是什么情况呢?
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message