hive (default)> select * from emp where sal >1000;
复制代码
注意:where子句中不能使用字段别名。
比力运算符(Between/In/ Is Null)
1)下面表中描述了谓词操作符,这些操作符同样可以用于JOIN…ON和HAVING语句中。
操作符支持的数据类型描述A=B基本数据类型如果A等于B则返回TRUE,反之返回FALSEA<=>B基本数据类型如果A和B都为NULL,则返回TRUE,如果一边为NULL,返回FalseA<>B, A!=B基本数据类型A或者B为NULL则返回NULL;如果A不等于B,则返回TRUE,反之返回FALSEA<B基本数据类型A或者B为NULL,则返回NULL;如果A小于B,则返回TRUE,反之返回FALSEA<=B基本数据类型A或者B为NULL,则返回NULL;如果A小于等于B,则返回TRUE,反之返回FALSEA>B基本数据类型A或者B为NULL,则返回NULL;如果A大于B,则返回TRUE,反之返回FALSEA>=B基本数据类型A或者B为NULL,则返回NULL;如果A大于等于B,则返回TRUE,反之返回FALSEA [NOT] BETWEEN B AND C基本数据类型如果A,B或者C任一为NULL,则结果为NULL。如果A的值大于等于B而且小于或等于C,则结果为TRUE,反之为FALSE。如果使用NOT关键字则可到达相反的效果。A IS NULL全部数据类型如果A等于NULL,则返回TRUE,反之返回FALSEA IS NOT NULL全部数据类型如果A不等于NULL,则返回TRUE,反之返回FALSEIN(数值1, 数值2)全部数据类型使用 IN运算表现列表中的值A [NOT] LIKE BSTRING 类型B是一个SQL下的简朴正则表达式,也叫通配符模式,如果A与其匹配的话,则返回TRUE;反之返回FALSE。B的表达式阐明如下:‘x%’表示A必须以字母‘x’开头,‘%x’表示A必须以字母’x’结尾,而‘%x%’表示A包含有字母’x’,可以位于开头,结尾或者字符串中央。如果使用NOT关键字则可到达相反的效果。A RLIKE B, A REGEXP BSTRING 类型B是基于java的正则表达式,如果A与其匹配,则返回TRUE;反之返回FALSE。匹配使用的是JDK中的正则表达式接口实现的,由于正则也依据其中的规则。比方,正则表达式必须和整个字符串A相匹配,而不是只需与其字符串匹配。 2)案例实操
(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);