大数据之Hive:DML数据操作(五)

1.统计函数
1-1.求总行数(count)

hive (default)> select count(*) cnt from emp;

1-2.求工资的最大值(max)

hive (default)> select max(sal) max_sal from emp;

1-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;

2.Limit语句
典型的查询会返回多行数据。LIMIT子句用于限制返回的行数。

hive (default)> select * from emp limit 5;

3.Where语句
1.使用WHERE子句,将不满足条件的行过滤掉
2.WHERE子句紧随FROM子句

hive (default)> select * from emp where sal >1000;

注意:where子句中不能使用字段别名。
4.比较运算符(Between/In/ Is Null)
1)案例实操
(1)查询出薪水等于5000的所有员工

hive (default)> select * from emp where sal =5000;

(2)查询工资在500到1000的员工信息

hive (default)> select * from emp where sal between 500 and 1000;

(3)查询comm为空的所有员工信息

hive (default)> select * from emp where comm is null;

(4)查询工资是1500或5000的员工信息

hive (default)> select * from emp where sal IN (1500, 5000);

5.Like和RLike
1)使用LIKE运算选择类似的值
2)选择条件可以包含字符或数字:
% 代表零个或多个字符(任意个字符)。
_ 代表一个字符。
(1)查找以2开头薪水的员工信息

hive (default)> select * from emp where sal LIKE '2%';
(2)查找第二个数值为2的薪水的员工信息
hive (default)> select * from emp where sal LIKE '_2%';
(3)查找薪水中含有2的员工信息
hive (default)> select * from emp where sal RLIKE '[2]';

6.逻辑运算符(And/Or/Not)
案例实操
(1)查询薪水大于1000,部门是30

hive (default)> select * from emp where sal>1000 and deptno=30;

(2)查询薪水大于1000,或者部门是30

hive (default)> select * from emp where sal>1000 or deptno=30;

(3)查询除了20部门和30部门以外的员工信息

hive (default)> select * from emp where deptno not IN(30, 20);

猜你喜欢

转载自blog.csdn.net/weixin_43597208/article/details/112564937