HIVE点滴:选择两个字段时distinct位置的影响
来源:互联网 发布:淘宝二手图形工作站 编辑:程序博客网 时间:2024/05/16 11:32
当选择两个字段时,例如:"select XX1, XX2 from tb; ",那么将distinct放在前一个字段XX1之前和放在后一个字段XX2之前,结果有什么不同呢?
先说结论:如果将distinct放在前一个字段之前,则会返回对两个字段的组合去重后的结果;而如果将distinct放在后一个字段之前,则会报错。
以下是在HIVE中的验证:
1)建表:其中xxx替换为本地目录名
create external table tmp_tb(id int,content int) row format delimitedfields terminated by ','stored as textfilelocation '/tmp/xxx';
2)从tmp_tb文件中导入数据
load datalocal inpath '/home/xxx/tmp_tb'overwrite into table tmp_tb;
tmp_tb内容:
1,5
2,6
2,5
2,5
3,6
3)选择两个字段时,distinct放在后一个字段之前:
select id, distinct contentfrom tmp_tb;
结果出现错误提示:
FAILED: ParseException line 1:11 cannot recognize input near'distinct' 'content' 'from' in selection target
4)选择两个字段时,distinct放在前一个字段之前:
select distinct id, contentfrom tmp_tb;
结果如下:
1 5
2 5
2 6
3 6
可见,当选择两个字段时,如果将distinct放在前一个字段之前,则会返回对两个字段的组合去重后的结果,即distinct同时作用于两个字段;而如果将distinct放在后一个字段之前,则有语法错误。
0 0
- HIVE点滴:选择两个字段时distinct位置的影响
- HIVE点滴:group by和distinct语句的执行顺序
- db2按字段长度排序,使用distinct对ordery by的影响
- Hive – Distinct 的实现
- Hive – Distinct 的实现
- Hive – Distinct 的实现
- 序时薄打开非常慢--慎用DISTINCT(在选择大量字段的情况下)
- Hive优化的点滴记录
- mysql 统计时 DISTINCT 的字段有 null值解决办法
- 互相影响的选择
- Hive 点滴
- Hive的两个问题
- 选择不重复的数据SELECT DISTINCT
- 链接时 库在命令行位置的影响
- DISTINCT选取多个字段,只DISTINCT一个字段的解决办法
- Win32编程点滴之窗口的位置
- [js点滴]常见的事件位置属性
- hive日志的存储位置
- Unity 性能优化 Draw Call
- Java编程中操作XML文件(解析方法三:JDOM)
- POJ 1386 判断欧拉回路
- C++实现最短路算法——Dijkstra算法
- 数据库宕机,my.cnf各项配置优化
- HIVE点滴:选择两个字段时distinct位置的影响
- 为何你叫妹子笑,却拍出无数黑照?
- 最大公约数和最小公约数
- JavaEE学习笔记之SSH—Struts2(2)
- php程序员应具有的7种能力
- Unity3D性能优化--- 收集整理的一堆
- 343. Integer Break
- 输入一个十进制数,转化为二进制
- 你画过哪些好玩儿的作品?