...
The following built-in mathematical functions are supported in Hive.
Return Type | Name (Signature) | Description | OSS |
---|---|---|---|
double | round(DOUBLE a) | Returns the rounded | |
double | round(DOUBLE a, INT d) | Returns | |
double | bround(DOUBLE a) | Returns the rounded BIGINT value of a using HALF_EVEN rounding mode. Also known as Gaussian rounding or bankers' rounding. Example: bround(2.5) = 2, bround(3.5) = 4. | GenericUDFBRound |
double | bround(DOUBLE a, INT d) | Returns a rounded to d decimal places using HALF_EVEN rounding mode. Example: bround(8.25, 1) = 8.2, bround(8.35, 1) = 8.4. | |
bigint | floor(DOUBLE a) | Returns the maximum | |
bigint | ceil(DOUBLE a), ceiling(DOUBLE a) | Returns the minimum BIGINT value that is equal to or greater than | |
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 | |
double | ln(DOUBLE a), ln(DECIMAL a) | Returns the natural logarithm of the argument | |
double | log10(DOUBLE a), log10(DECIMAL a) | Returns the base-10 logarithm of the argument | |
double | log2(DOUBLE a), log2(DECIMAL a) | Returns the base-2 logarithm of the argument | |
double | log(DOUBLE base, DOUBLE a) log(DECIMAL base, DECIMAL a) | Returns the base- | |
double | pow(DOUBLE a, DOUBLE p), power(DOUBLE a, DOUBLE p) | Returns | |
double | sqrt(DOUBLE a), sqrt(DECIMAL a) | Returns the square root of | |
string | bin(BIGINT a) | Returns the number in binary format. | |
string | hex(BIGINT a) hex(STRING a) hex(BINARY a) | If the argument is an | |
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. | |
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. | |
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 | |
double | sin(DOUBLE a), sin(DECIMAL a) | Returns the sine of | |
double | asin(DOUBLE a), asin(DECIMAL a) | Returns the arc sin of | |
double | cos(DOUBLE a), cos(DECIMAL a) | Returns the cosine of | |
double | acos(DOUBLE a), acos(DECIMAL a) | Returns the arccosine of | |
double | tan(DOUBLE a), tan(DECIMAL a) | Returns the tangent of | |
double | atan(DOUBLE a), atan(DECIMAL a) | Returns the arctangent of | |
double | degrees(DOUBLE a), degrees(DECIMAL a) | Converts value of | |
double | radians(DOUBLE a), radians(DOUBLE a) | Converts value of | |
int or double | positive(INT a), positive(DOUBLE a) | Returns | |
int or double | negative(INT a), negative(DOUBLE a) | Returns | |
double or int | sign(DOUBLE a), sign(DECIMAL a) | Returns the sign of | |
double | e() | Returns the value of | |
double | pi() | Returns the value of | |
bigint | factorial(INT a) | Returns the factorial of a Valid a is [0..20]. | GenericUDFFactorial |
double | cbrt(DOUBLE a) | Returns the cube root of a double value. | GenericUDFCbrt |
int bigint | shiftleft(TINYINT|SMALLINT|INT a, INT b) shiftleft(BIGINT a, INT b) | Bitwise left shift. Shifts Returns int for tinyint, smallint and int | |
int bigint | shiftright(TINYINT|SMALLINT|INT a, INT b) shiftright(BIGINT a, INT b) | Bitwise right shift. Shifts Returns int for tinyint, smallint and int | |
int bigint | shiftrightunsigned(TINYINT|SMALLINT|INT a, INT b), shiftrightunsigned(BIGINT a, INT b) | Bitwise unsigned right shift. Shifts Returns int for tinyint, smallint and int | |
T | greatest(T v1, T v2, ...) | Returns the greatest value of the list of values. Fixed to return NULL when one or more arguments are NULL, and strict type restriction relaxed, consistent with ">" operator. | GenericUDFGreatest |
T | least(T v1, T v2, ...) | Returns the least value of the list of values. Fixed to return NULL when one or more arguments are NULL, and strict type restriction relaxed, consistent with "<" operator. | GenericUDFLeast |
int | width_bucket(NUMERIC expr, NUMERIC min_value, NUMERIC max_value, INT num_buckets) | Returns an integer between 0 and num_buckets+1 by mapping expr into the ith equally sized bucket. Buckets are made by dividing [min_value, max_value] into equally sized regions. If expr < min_value, return 1, if expr > max_value return num_buckets+1. See https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions214.htm |
Collection Functions
The following built-in collection functions are supported in Hive.
...