开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

各位,使用 Table API 执行一个 从多个表获取数据的SQL,打印后发现很多重复的数据,这个是

各位,使用 Table API 执行一个 从多个表获取数据的SQL,打印后发现很多重复的数据,这个是为什么?如何处理?

展开
收起
游客3oewgrzrf6o5c 2022-08-20 17:18:10 1145 0
1 条回答
写回答
取消 提交回答
  • 重复数据出现的原因是因为在多个表之间存在关联关系,如果没有正确设置关联条件,就会导致获取到的数据出现重复。因此,需要检查 SQL 中的关联条件是否正确。

    另外,你可以尝试使用 DISTINCT 关键字去重,例如:

    SELECT DISTINCT column1, column2 FROM table1 JOIN table2 ON table1.id = table2.id;
    

    如果你已经确认关联条件设置正确,但仍然存在重复数据,可以考虑使用 GROUP BY 关键字进行分组,例如:

    SELECT column1, column2, COUNT(*) FROM table1 JOIN table2 ON table1.id = table2.id GROUP BY column1, column2;
    

    这样可以将相同的数据进行分组,并统计数量,从而避免重复数据的出现。

    2023-06-13 18:46:57
    赞同 展开评论 打赏

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

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载