hi guoliubin85:
一样的报错:
Flink SQL> select mid,code,floor_id,TUMBLE_START(time_local/1000, INTERVAL '1'
MINUTE) as log_minute,count(1) pv
> from lightart_expose
> where code is not null and floor_id is not null
> group by mid,code,floor_id,TUMBLE(time_local/1000, INTERVAL '1'
> MINUTE);[ERROR] Could not execute SQL statement. Reason:
org.apache.calcite.sql.validate.SqlValidatorException: Cannot apply '$TUMBLE'
to arguments of type '$TUMBLE(, )'. Supported form(s):
'$TUMBLE(, )'
'$TUMBLE(, , )'
> group by mid,code,floor_id,TUMBLE(time_local/1000, INTERVAL '1'
> MINUTE);[ERROR] Could not execute SQL statement. Reason:
org.apache.calcite.sql.validate.SqlValidatorException: Cannot apply '$TUMBLE'
to arguments of type '$TUMBLE(, )'. Supported form(s):
'$TUMBLE(, )'
'$TUMBLE(, , )'
在 2020-12-14 10:41:12,"guoliubi...@foxmail.com" 写道:
>TUMBLE第一个参数需要的就是bigint,你这边time_local 直接用就好,不用转另外TIMESTAMP
>
>
>
>guoliubi...@foxmail.com
>
>发件人: kandy.wang
>发送时间: 2020-12-14 10:28
>收件人: user-zh
>主题: Window aggregate can only be defined over a time attribute column, but
>TIMESTAMP(3) encountered.
>[ERROR] Could not execute SQL statement.
>Reason:org.apache.flink.table.api.TableException: Window aggregate can only be
>defined over a time attribute column, but TIMESTAMP(3) encountered.
>
>
>SQL 如下:
>create temporary view expose as
>
>select
>
>mid
>
>,time_local
>
>,TO_TIMESTAMP(FROM_UNIXTIME(time_local / 1000, '-MM-dd HH:mm:ss')) as
>log_ts
>
>,proctime
>
>from hive.temp.kafka_table
>
>;
>time_local 是bigint
>
>
>
>select TUMBLE_START(log_ts, INTERVAL '1' MINUTE) as log_minute,count(1) pv
>
>from expose
>
>group by TUMBLE(log_ts, INTERVAL '1' MINUTE);
>
>
>window agg的字段报错,如何解决。