0- 前言
hive 里的向上取整、向下取整、四舍五入取整的实例.以及精确保留小数位数。
1- 四舍五入取整截取
select round(54.56,0)
round至少保留一位小数。
55.0
2- 向下取整截取
SELECT FLOOR(54.56)
54
3- 向上取整截取
SELECT CEILING(13.15)
14
4- 舍弃小数取整
select cast(123.5678 as int) -------123
(同是他也是一个类型转换函数)
5- 举例
–两个整数相除会返回小数(根据sql版本不同,会有不同的效果)
select 3/4,4/3,5/3
–结果 0.75,1.333333333,1. 66666666666667
–返回大于或等于所给数字表达式的最小整数
SELECT CEILING(123.55), CEILING(123.45),CEILING(-123.45), CEILING(0.0)
–结果 124,124,-123,0
—四舍五入 round(a,b) – 结果a 精确到小数点右 b位,或是左 -b位
select round(54.36,-2), round(54.36,-1),round(54.36,0), round(54.36,1),round(54.36,2)
–结果 100.0,50.0,54.0,54.4,54.36
—四舍五入 并转化为 整数
select cast(round(56.361,0) as int),cast(round(56.561,0) as int)
–结果 56,57