Hive查询
1.基础语句
1)全表查询
2)选择特定列查询
3)列别名(as可有可无)
2.Where语句
例 :
3.Like和RLike
4.Group by语句
5.Having语句
6.连接
多表连接
注意:连接 n个表,至少需要n-1个连接条件。例如:连接三个表,至少需要两个连接条件。
7.排序
1)全局排序(Order By)
Order By:全局排序,一个Reducer
使用 ORDER BY 子句排序:
ASC(ascend): 升序(默认)
DESC(descend): 降序
ORDER BY 子句在SELECT语句的结尾
例:
2)按照别名排序
3)多个列排序
4)每个MapReduce内部排序(Sort By)
5)分区排序(Distribute By)
Distribute By:类似MR中partition,进行分区,结合sort by使用。
注意,Hive要求DISTRIBUTE BY语句要写在SORT BY语句之前。
对于distribute by进行测试,一定要分配多reduce进行处理,否则无法看到distribute by的效果。
6)Cluster By
当distribute by和sorts by字段相同时,可以使用cluster by方式。
cluster by除了具有distribute by的功能外还兼具sort by的功能。但是排序只能是升序排序,不能指定排序规则为ASC或者DESC。
注意:按照部门编号分区,不一定就是固定死的数值,可以是20号和30号部门分到一个分区里面去。