HQL 工作bug总结

本文深入探讨了HQL中常见的三个问题:distinct关键字的多字段去重机制、insertoverwrite语句对字段顺序的要求以及groupby分组时的限制。通过具体示例,帮助读者理解这些BUG的成因及如何避免。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 distinct

distinct后面跟多个字段时,会根据所有字段的组合进行去重。而不是只根据紧跟在distinct后面的那一个字段去重。

2 insert overwrite table

insert overwrite table a select xx1,xx2 from b
xx1,xx2的顺序必须与表a中字段的顺序相同,否则插进去的值位置对应错误。

3 select xx1,xx2 from t group by xx1,xx2

使用group by分组时,要求select 后面出现的列必须在group by中全部使用到。
这对group by来讲是个限制,可以使用collect_list()/collect_set()突破这种限制。Hive笔记之collect_list/collect_set(列转行)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张之海

若有帮助,客官打赏一分吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值