大家flink sql 选择 group-offset 新的group 会报错吗?

大家flink sql 选择 group-offset 新的group 会报错吗?

展开
收起
爱喝咖啡嘿 2022-12-09 16:52:47 335 发布于辽宁 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 在使用 Flink SQL 中的 GROUP BY 语句时,如果选择的分组字段是一个 offset 类型的字段(例如 GROUP BY ROW_NUMBER() OVER (...)),可能会出现错误。这是因为 offset 类型的字段表示的是行号,不能用于分组。

    为了避免这种情况,你可以在使用 GROUP BY 语句时使用其他字段作为分组条件。例如,如果你想对每个用户的记录进行分组统计,可以这样做:

    SELECT user_id, COUNT(*) FROM my_table GROUP BY user_id 如果你想使用多个字段作为分组条件,可以这样做:

    SELECT user_id, date, COUNT(*) FROM my_table GROUP BY user_id, date 如果你想在使用分组的同时获取每行的行号,可以使用如下 SQL 语句:

    SELECT user_id, date, ROW_NUMBER() OVER (PARTITION BY user_id, date ORDER BY timestamp) AS row_number, COUNT(*) FROM my_table 这样,你就可以在分组的同时获取每行的行号,而不会报错。

    希望这些信息能帮助你解决问题。

    2022-12-31 11:42:34 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

收录在圈子:
实时计算 Flink 版(Alibaba Cloud Realtime Compute for Apache Flink,Powered by Ververica)是阿里云基于 Apache Flink 构建的企业级、高性能实时大数据处理系统,由 Apache Flink 创始团队官方出品,拥有全球统一商业化品牌,完全兼容开源 Flink API,提供丰富的企业级增值功能。
还有其他疑问?
咨询AI助理
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等