背景:在一次开发中,使用了group by多个字段,但是发现group by不生效,起不到作用

目标:找到group by失败的原因,并进行总结

动作1:在不生效的group by的外层再加一层group by,结果发现group by还是不起作用,很多重复数据。

排查2:发现group by的字段中有一个“年龄”的字段,这个字段在上游是double类型,但是在我目标表里面是bigint类型

动作2:使用cast把double类型(存在23.1,23.555,23.34565这种记录)转换为bigint类型再进行分组.

结果:解决问题,group by之后没有重复记录了。

反思:1)要坚信group by是可以去重的,不要怀疑人生,怀疑自己

           2)学会排查,一层一层从里面向外面排查,看数据是从什么地方开始不对劲的;

           3)要学会从明细数据,一层一层去反推,要沉着冷静


版权声明:本文为yezonghui原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/yezonghui/article/details/128222908