【大数据基础知识】Hive内置函数----数学函数(一)

Hive内置了很多函数,方便实现对数据的操作。这次我们来看下其中的数学函数。

【大数据基础知识】Hive内置函数----数学函数(一)

函数的具体使用,如下所示。

1、round(double a)

hive (default)> select round(2.3);

OK

_c0

2.0

Time taken: 0.081 seconds, Fetched: 1 row(s)

说明:对2.3进行四舍五入,结果为2.0

hive (default)> select round(2.6);

OK

_c0

3.0

Time taken: 0.063 seconds, Fetched: 1 row(s)

说明:对2.6进行四舍五入,结果为3.0

2、round(double a, int d)

hive (default)> select round(5.683,2);

OK

_c0

5.68

Time taken: 0.862 seconds, Fetched: 1 row(s)

说明:对5.683保留两位小数,对3进行四舍五入

hive (default)> select round(5.689,2);

OK

_c0

5.69

Time taken: 0.073 seconds, Fetched: 1 row(s)

说明:对5.689保留两位小数,对9进行四舍五入

3、floor(double a)

hive (default)> select floor(2.56);

OK

_c0

2

Time taken: 0.968 seconds, Fetched: 1 row(s)

说明:对2.56向下取整,结果为2

hive (default)> select floor(2.36);

OK

_c0

2

Time taken: 0.086 seconds, Fetched: 1 row(s)

说明:对2.36向下取整,结果为2

4、ceil(double a), ceiling(double a)

hive (default)> select ceil(2.3);

OK

_c0

3

Time taken: 0.942 seconds, Fetched: 1 row(s)

hive (default)> select ceiling(2.3);

OK

_c0

3

Time taken: 0.096 seconds, Fetched: 1 row(s)

说明:ceil和ceiling函数的功能是一样的,对2.3上取整,结果为3

hive (default)> select ceil(2.8);

OK

_c0

3

Time taken: 0.07 seconds, Fetched: 1 row(s)

hive (default)> select ceiling(2.8);

OK

_c0

3

说明:对2.8上取整,结果为3

5、rand()

hive (default)> select rand();

OK

_c0

0.45944267022402563

Time taken: 0.104 seconds, Fetched: 1 row(s)

hive (default)> select rand();

OK

_c0

0.03447519492300788

说明:返回0-1之间的随机数

6、rand(seed)

hive (default)> select rand(3);

OK

_c0

0.731057369148862

Time taken: 1.436 seconds, Fetched: 1 row(s)

hive (default)> select rand(3);

OK

_c0

0.731057369148862

Time taken: 0.104 seconds, Fetched: 1 row(s)

hive (default)> select rand(5);

OK

_c0

0.730519863614471

Time taken: 0.09 seconds, Fetched: 1 row(s)

说明:种子数相同,得到的随机数相同。种子数不同,得到不同的随机数

想要了解更多大数据知识,可以关注优就业官网(www.ujiuye.com),如果想要更多的学习资料,可以添加我们的qq群-741090028   (加群备注暗号:小小优即可获得免费学习资料)