hive之HQL 使用where过滤

查询10号部门的员工
select * from emp where deptno=10
查询名叫king 的员工
select * from emp where name='king'
在hive的HQL语句中是严格区分大小写的
查询部号是10,薪水小于2000的员工
select * from emp where deptno=10 and sal<20;
分析执行计划
explain select * from emp where deptno=10 and sal<2000;
模糊查询:查询名字以S打头的员工
select empno,ename,sal from emp where ename like 'S%'; 
也可以写成下划线,下划线表示是任意的一个字符
特殊情况,查询名字中含有下划线的员工
select empno,ename,sal from emp where ename like '%_%';
显然没有达到想要的效果,把所有记录都查询出来了,这是因为下划线代表是的任意一个字符
select enpno,ename,sal from emp where ename like '%\\_%';
第一个左斜线代表是它是一个转义字符的含义,这个转义字符是什么呢,它是一个左斜线,这时这个下划线就是代表下划线本身的含义

猜你喜欢

转载自blog.csdn.net/lepton126/article/details/80304966
今日推荐