赞
踩
hive> select 1 + 9 from dual;
10
hive> select 10 – 5 from dual;
5
hive> select 40 * 5 from dual;
200
hive> select 40 / 5 from dual;
8.0
hive 中最高精度的数据类型是 double, 只精确到小数点后 16 位,在做除法运算的时候要 特别注意
hive>select ceil(28.0/6.999999999999999999999) from dual limit 1;
结果为4
hive>select ceil(28.0/6.99999999999999) from dual limit 1;
结果为5
hive> select 41 % 5 from dual;
1
hive> select 8.4 % 4 from dual;
0.40000000000000036
注意:精度在 hive 中是个很大的问题,类似这样的操作最好通过 round 指定精度
hive> select round(8.4 % 4 , 2) from dual;
0.4
hive> select 4 & 8 from dual;
0
hive> select 6 & 4 from dual;
4
hive> select 4 | 8 from dual;
12
hive> select 6 | 8 from dual;
14
hive> select 4 ^ 8 from dual;
12
hive> select 6 ^ 4 from dual;
2
hive> select ~6 from dual;
-7
hive> select ~4 from dual;
-5
hive> select 1 from dual where 1=1 and 2=2;
1
hive> select 1 from dual where 1=2 or 2=2;
1
hive> select 1 from dual where not 1=2;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。