- 博客(2)
- 收藏
- 关注
原创 hive中开窗函数range和rows的使用区别
range:按照order by 的字段cnt排序后,取大于cnt & 小于cnt的值划分开窗区间,以上面例子的范围为:cnt+1>= cnt范围 >=cnt-1。rows:按照order by 的字段cnt排序后,前面和后面的行数。先看案例,看看range和rows的开窗范围有什么区别。
2024-11-04 14:06:03
254
原创 hive 查询join的子查询时数据和join关系错乱
并且,把对外表的过滤条件,应用在了t2表上,更离谱的是过滤数据错位isp='移动'变成了biz_id='移动'。所以t2表的子查询根本不会有数据,导致了看到的sql查询结果没有关联上t2表。查询后存在问题,name列数据和isp列数据错位,t1数据都没有和t2表关联上,查询t2字段都是null。查看explain,hive sql 解析有问题,把外层的过滤条件添加到了t1表内部,查询sql,t1和t2关联,最后子查询外有个isp='移动'过滤条件。使用with创建临时表也有同样的问题。
2024-04-16 19:06:15
277
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人