Hive的 DQL 查询语句
查询语句语法:
SELECT [ALL | DISTINCT] select_expr, select_expr, …
FROM table_reference
[WHERE where_condition]
[GROUP BY col_list]
[ORDER BY col_list]
[SORT BY col_list]
[LIMIT number]
基本查询(select…from)
全表和特定列查询
1.全表查询
hive (default)> select * from 表;
2.选择特定列查询
hive (default)> select 字段1, 字段2 from 表;
注意:
(1)SQL 语言大小写不敏感。
(2)SQL 可以写在一行或者多行
(3)关键字不能被缩写也不能分行
(4)各子句一般要分行写。
(5)使用缩进提高语句的可读性。
列别名
1.重命名一个列
2.便于计算
3.紧跟列名,也可以在列名和别名之间加入关键字‘AS’
hive (default)> select ename AS name, deptno dn from emp;
算术运算符(+ - * / %)
查询出所有员工的薪水后加1显示。
hive (default)> select sal +1 from emp;
常用函数
聚合函数(多行输入被处理一行 )
1.求总行数(count)
hive (default)> select count(*) cnt from emp;
2.求工资的最大值(max)
hive (default)> select max(sal) max_sal from emp;
3.求工资的最小值(min)
hive (default)> select min(sal) min_sal from emp;
4.求工资的总和(sum)
hive (default)> select sum(sal) sum_sal from emp;
5.求工资的平均值(avg)
hive (default)> select avg(sal) avg_sal from emp;
Limit语句
典型的查询会返回多行数据。LIMIT子句用于限制返回的行数。
hive (default)> select * from emp limit 5;
Where语句
1.使用WHERE子句,将不满足条件的行过滤掉
2.WHERE子句紧随FROM子句
3.实操
查询出薪水大于1000的所有员工
hive (default)> select * from emp where sal