##### Child pages
• LanguageManual UDF

# Page History

## Key

• This line was removed.
• Formatting was changed.
Comment: version information for decimal math functions added in HIVE-6327, HIVE-6246, HIVE-6385

...

Return Type

Name (Signature)

Description

DOUBLE

round(DOUBLE a)

Returns the rounded `BIGINT` value of `a`

DOUBLE

round(DOUBLE a, INT d)

Returns `a` rounded to `d` decimal places

BIGINT

floor(DOUBLE a)

Returns the maximum `BIGINT` value that is equal or less than `a`

BIGINT

ceil(DOUBLE a), ceiling(DOUBLE a)

Returns the minimum BIGINT value that is equal or greater than `a`

DOUBLE

rand(), rand(INT seed)

Returns a random number (that changes from row to row) that is distributed uniformly from 0 to 1. Specifying the seed will make sure the generated random number sequence is deterministic.

DOUBLE

exp(DOUBLE a), exp(DECIMAL a)

Returns `ea` where `e` is the base of the natural logarithm. Decimal version added in Hive 0.13.0.

DOUBLE

ln(DOUBLE a), ln(DECIMAL a)

Returns the natural logarithm of the argument `a`. Decimal version added in Hive 0.13.0.

DOUBLE

log10(DOUBLE a), log10(DECIMAL a)

Returns the base-10 logarithm of the argument `a`. Decimal version added in Hive 0.13.0.

DOUBLE

log2(DOUBLE a), log2(DECIMAL a)

Returns the base-2 logarithm of the argument `a`. Decimal version added in Hive 0.13.0.

DOUBLE

log(DOUBLE base, DOUBLE a)

Return the base-`base` logarithm of the argument d. Instead of DOUBLE this UDF also takes DECIMAL, both types can be mixed. Decimal versions added in Hive 0.13.0.

DOUBLE

pow(DOUBLE a, DOUBLE p), power(DOUBLE a, DOUBLE p)

Return `ap`

DOUBLE

sqrt(DOUBLE a), sqrt(DECIMAL a)

Returns the square root of `a`. Decimal version added in Hive 0.13.0.

STRING

bin(BIGINT a)

Returns the number in binary format (see http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_bin)

STRING

hex(BIGINT a) hex(STRING a) hex(BINARY a)

If the argument is an `INT` or `binary` `hex` returns the number as a `STRING` in hex format. Otherwise if the number is a `STRING`, it converts each character into its hex representation and returns the resulting `STRING`. (see http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_hex, `BINARY` version as of Hive 0.12.0)

BINARY

unhex(STRING a)

Inverse of hex. Interprets each pair of characters as a hexadecimal number and converts to the byte representation of the number. (`BINARY` version as of Hive 0.12.0, used to return a string)

STRING

conv(BIGINT num, INT from_base, INT to_base), conv(STRING num, INT from_base, INT to_base)

Converts a number from a given base to another (see http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_conv)

DOUBLE

abs(DOUBLE a)

Returns the absolute value

INT or DOUBLE

pmod(INT a, INT b), pmod(DOUBLE a, DOUBLE b)

Returns the positive value of `a mod b`

DOUBLE

sin(DOUBLE a), sin(DECIMAL a)

Returns the sine of `a` (`a` is in radians). Decimal version added in Hive 0.13.0.

DOUBLE

asin(DOUBLE a), asin(DECIMAL a)

Returns the arc sin of `a` if -1<=a<=1 or NULL otherwise. Decimal version added in Hive 0.13.0.

DOUBLE

cos(DOUBLE a), cos(DECIMAL a)

Returns the cosine of `a` (`a` is in radians). Decimal version added in Hive 0.13.0.

DOUBLE

acos(DOUBLE a), acos(DECIMAL a)

Returns the arccosine of `a` if -1<=a<=1 or NULL otherwise. Decimal version added in Hive 0.13.0.

DOUBLE

tan(DOUBLE a), tan(DECIMAL a)

Returns the tangent of `a` (`a` is in radians). Decimal version added in Hive 0.13.0.

DOUBLE

atan(DOUBLE a), atan(DECIMAL a)

Returns the arctangent of `a`. Decimal version added in Hive 0.13.0.

DOUBLE

degrees(DOUBLE a), degrees(DECIMAL a)

Converts value of `a` from radians to degrees. Decimal version added in Hive 0.13.0.

DOUBLE

Converts value of `a` from degrees to radians. Decimal version added in Hive 0.13.0.

INT or DOUBLE

positive(INT a), positive(DOUBLE a)

Returns `a`

INT or DOUBLE

negative(INT a), negative(DOUBLE a)

Returns `-a`

FLOATDOUBLE or INT

sign(DOUBLE a), sign(DECIMAL a)

Returns the sign of `a` as '1.0' (if `a` is positive) or '-1.0' (if `a` is negative), '0.0' otherwise. The decimal version returns INT instead of DOUBLE. Decimal version added in Hive 0.13.0.

DOUBLE

e()

Returns the value of e

DOUBLE

pi()

Returns the value of pi

...