开发者社区> 问答> 正文

分组查询时,select的字段是否一定要都在group by中吗?

我用Flink SQL 建了一张表,主键也设置了,执行形如"select * from test_table group by 主键 " 会报Expression 'XXX' is not being group的错误,通常来说按主键group by的话不是可以确定唯一性的吗? 难道是因为建表语句中flink的主键约束模式只支持 NOT ENFROCED吗? 这里有点不太明白*来自志愿者整理的flink邮件归档

展开
收起
小阿怪 2021-12-06 12:20:04 1491 0
1 条回答
写回答
取消 提交回答
  • 你的分析是对的,group by pk的query是可以优化到筛选全部列的,这可以是个优化点,只是flink 现在还没有做, 和 Flink pk的 NOT ENFORCED 并没有关系,NOT NEOFRCED是说Flink不持有数据,不像数据库持有数据可以在读取时做校验。 个人感觉这是个小的优化点,如果很急需可以考虑在社区开个issue.

    *来自志愿者整理的flink邮件归档

    2021-12-06 13:22:54
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
对 2000 多亿条数据做一次 group by 需要多久? 立即下载
对2000多亿条数据做一次Group By 需要多久 立即下载
低代码开发师(初级)实战教程 立即下载