This topic contains all functions supported by GoogleSQL for Bigtable.
Function list
| Name | Summary | 
|---|---|
ABS  |   Computes the absolute value of X.  |  
ACOS  |   Computes the inverse cosine of X.  |  
ACOSH  |   Computes the inverse hyperbolic cosine of X.  |  
ANY_VALUE  |  Gets an expression for some row. | 
APPROX_COUNT_DISTINCT  |   Gets the approximate result for COUNT(DISTINCT expression).  |  
APPROX_QUANTILES  |  Gets the approximate quantile boundaries. | 
APPROX_TOP_COUNT  |  Gets the approximate top elements and their approximate count. | 
APPROX_TOP_SUM  |  Gets the approximate top elements and sum, based on the approximate sum of an assigned weight. | 
ARRAY_AGG  |  Gets an array of values. | 
ARRAY_CONCAT  |  Concatenates one or more arrays with the same element type into a single array. | 
ARRAY_CONCAT_AGG  |  Concatenates arrays and returns a single array as a result. | 
ARRAY_FILTER  |  Takes an array, filters out unwanted elements, and returns the results in a new array. | 
ARRAY_FIRST  |  Gets the first element in an array. | 
ARRAY_INCLUDES  |  Checks if there is an element in the array that is equal to a search value. | 
ARRAY_INCLUDES_ALL  |  Checks if all search values are in an array. | 
ARRAY_INCLUDES_ANY  |  Checks if any search values are in an array. | 
ARRAY_IS_DISTINCT  |  Checks if an array contains no repeated elements. | 
ARRAY_LAST  |  Gets the last element in an array. | 
ARRAY_LAST_N  |   Gets the suffix of an array, consisting of the last n elements.  |  
ARRAY_LENGTH  |  Gets the number of elements in an array. | 
ARRAY_OFFSET  |  Searches an array from the beginning or ending and produces the zero-based offset for the first matching element. | 
ARRAY_OFFSETS  |  Searches an array and gets the zero-based offsets for matching elements. | 
ARRAY_REVERSE  |  Reverses the order of elements in an array. | 
ARRAY_SLICE  |  Produces an array containing zero or more consecutive elements from an input array. | 
ARRAY_TO_STRING  |   Produces a concatenation of the elements in an array as a STRING value.  |  
ARRAY_TRANSFORM  |  Transforms the elements of an array, and returns the results in a new array. | 
ASCII  |   Gets the ASCII code for the first character or byte in a STRING or BYTES value.  |  
ASIN  |   Computes the inverse sine of X.  |  
ASINH  |   Computes the inverse hyperbolic sine of X.  |  
ATAN  |   Computes the inverse tangent of X.  |  
ATAN2  |   Computes the inverse tangent of X/Y, using the signs of X and Y to determine the quadrant.  |  
ATANH  |   Computes the inverse hyperbolic tangent of X.  |  
AVG  |   Gets the average of non-NULL values.  |  
BIT_AND  |  Performs a bitwise AND operation on an expression. | 
BIT_OR  |  Performs a bitwise OR operation on an expression. | 
BIT_XOR  |  Performs a bitwise XOR operation on an expression. | 
BYTE_LENGTH  |   Gets the number of BYTES in a STRING or BYTES value.  |  
CAST  |  Convert the results of an expression to the given type. | 
CEIL  |   Gets the smallest integral value that isn't less than X.  |  
CEILING  |   Synonym of CEIL.  |  
CHAR_LENGTH  |   Gets the number of characters in a STRING value.  |  
CHR  |  Converts a Unicode code point to a character. | 
CODE_POINTS_TO_BYTES  |   Converts an array of extended ASCII code points to a BYTES value.  |  
CODE_POINTS_TO_STRING  |   Converts an array of extended ASCII code points to a STRING value.  |  
CONCAT  |   Concatenates one or more STRING or BYTES values into a single result.  |  
CORR  |  Computes the Pearson coefficient of correlation of a set of number pairs. | 
COS  |   Computes the cosine of X.  |  
COSH  |   Computes the hyperbolic cosine of X.  |  
COSINE_DISTANCE  |  Computes the cosine distance between two vectors. | 
COT  |   Computes the cotangent of X.  |  
COTH  |   Computes the hyperbolic cotangent of X.  |  
COUNT  |   Gets the number of rows in the input, or the number of rows with an expression evaluated to any value other than NULL.  |  
COUNTIF  |   Gets the number of TRUE values for an expression.  |  
COVAR_POP  |  Computes the population covariance of a set of number pairs. | 
COVAR_SAMP  |  Computes the sample covariance of a set of number pairs. | 
CSC  |   Computes the cosecant of X.  |  
CSCH  |   Computes the hyperbolic cosecant of X.  |  
CURRENT_DATE  |   Returns the current date as a DATE value.  |  
CURRENT_TIMESTAMP  |   Returns the current date and time as a TIMESTAMP object.  |  
DATE  |   Constructs a DATE value.  |  
DATE_ADD  |   Adds a specified time interval to a DATE value.  |  
DATE_DIFF  |   Gets the number of unit boundaries between two DATE values at a particular time granularity.  |  
DATE_FROM_UNIX_DATE  |   Interprets an INT64 expression as the number of days since 1970-01-01.  |  
DATE_SUB  |   Subtracts a specified time interval from a DATE value.  |  
DATE_TRUNC  |   Truncates a DATE, DATETIME, or TIMESTAMP value at a particular granularity.  |  
DIV  |   Divides integer X by integer Y.  |  
ENDS_WITH  |   Checks if a STRING or BYTES value is the suffix of another value.  |  
EXP  |   Computes e to the power of X.  |  
EXTRACT  |   Extracts part of a date from a DATE value.  |  
EXTRACT  |   Extracts part of a TIMESTAMP value.  |  
EUCLIDEAN_DISTANCE  |  Computes the Euclidean distance between two vectors. | 
FLOOR  |   Gets the largest integral value that isn't greater than X.  |  
FORMAT_DATE  |   Formats a DATE value according to a specified format string.  |  
FORMAT_TIMESTAMP  |   Formats a TIMESTAMP value according to the specified format string.  |  
FORMAT  |   Formats data and produces the results as a STRING value.  |  
FROM_BASE32  |   Converts a base32-encoded STRING value into a BYTES value.  |  
FROM_BASE64  |   Converts a base64-encoded STRING value into a BYTES value.  |  
FROM_HEX  |   Converts a hexadecimal-encoded STRING value into a BYTES value.  |  
GENERATE_ARRAY  |  Generates an array of values in a range. | 
GENERATE_DATE_ARRAY  |  Generates an array of dates in a range. | 
GENERATE_TIMESTAMP_ARRAY  |  Generates an array of timestamps in a range. | 
GREATEST  |   Gets the greatest value among X1,...,XN.  |  
HLL_COUNT.EXTRACT  |  Extracts a cardinality estimate of an HLL++ sketch. | 
HLL_COUNT.INIT  |  Aggregates values of the same underlying type into a new HLL++ sketch. | 
HLL_COUNT.MERGE  |  Merges HLL++ sketches of the same underlying type into a new sketch, and then gets the cardinality of the new sketch. | 
HLL_COUNT.MERGE_PARTIAL  |  Merges HLL++ sketches of the same underlying type into a new sketch. | 
IEEE_DIVIDE  |   Divides X by Y, but doesn't generate errors for division by zero or overflow.  |  
IFERROR  |  Evaluates a try expression, and if an evaluation error is produced, returns the result of a catch expression. | 
INITCAP  |   Formats a STRING as proper case, which means that the first character in each word is uppercase and all other characters are lowercase.  |  
INSTR  |  Finds the position of a subvalue inside another value, optionally starting the search at a given offset or occurrence. | 
IS_INF  |   Checks if X is positive or negative infinity.  |  
IS_NAN  |   Checks if X is a NaN value.  |  
ISERROR  |   Evaluates a try expression, and if an evaluation error is produced, returns TRUE.  |  
JSON_EXTRACT  |   (Deprecated) Extracts a JSON value and converts it to a SQL JSON-formatted STRING value.  |  
JSON_EXTRACT_SCALAR  |   (Deprecated) Extracts a JSON scalar value and converts it to a SQL STRING value.  |  
JSON_QUERY  |   Extracts a JSON value and converts it to a SQL JSON-formatted STRING value.  |  
JSON_QUERY_ARRAY  |   Extracts a JSON array and converts it to a SQL ARRAY<JSON-formatted STRING> value.  |  
JSON_VALUE  |   Extracts a JSON scalar value and converts it to a SQL STRING value.  |  
LAST_DAY  |   Gets the last day in a specified time period that contains a DATE value.  |  
LAST_DAY  |   Gets the last day in a specified time period that contains a DATETIME value.  |  
LEAST  |   Gets the least value among X1,...,XN.  |  
LEFT  |   Gets the specified leftmost portion from a STRING or BYTES value.  |  
LENGTH  |   Gets the length of a STRING or BYTES value.  |  
LN  |   Computes the natural logarithm of X.  |  
LOG  |   Computes the natural logarithm of X or the logarithm of X to base Y.  |  
LOG10  |   Computes the natural logarithm of X to base 10.  |  
LOGICAL_AND  |   Gets the logical AND of all non-NULL expressions.  |  
LOGICAL_OR  |   Gets the logical OR of all non-NULL expressions.  |  
LOWER  |   Formats alphabetic characters in a STRING value as lowercase. Formats ASCII characters in a BYTES value as lowercase.  |  
LPAD  |   Prepends a STRING or BYTES value with a pattern.  |  
LTRIM  |   Identical to the TRIM function, but only removes leading characters.  |  
MAP_CONTAINS_KEY  |  Checks if a key is in a map. | 
MAP_EMPTY  |  Checks if a map is empty. | 
MAP_ENTRIES  |  Gets an array of key-value pairs from a map, sorted in ascending order by key. | 
MAP_KEYS  |  Gets an array of keys from a map, sorted in ascending order. | 
MAP_VALUES  |  Gets an array of values from a map, sorted in ascending order by key. | 
MAX  |   Gets the maximum non-NULL value.  |  
MIN  |   Gets the minimum non-NULL value.  |  
MOD  |   Gets the remainder of the division of X by Y.  |  
NORMALIZE  |   Case-sensitively normalizes the characters in a STRING value.  |  
NORMALIZE_AND_CASEFOLD  |   Case-insensitively normalizes the characters in a STRING value.  |  
NULLIFERROR  |   Evaluates a try expression, and if an evaluation error is produced, returns NULL.  |  
OCTET_LENGTH  |   Alias for BYTE_LENGTH.  |  
PARSE_DATE  |   Converts a STRING value to a DATE value.  |  
PARSE_TIMESTAMP  |   Converts a STRING value to a TIMESTAMP value.  |  
POW  |   Produces the value of X raised to the power of Y.  |  
POWER  |   Synonym of POW.  |  
RAND  |   Generates a pseudo-random value of type FLOAT64 in the range of [0, 1).  |  
REGEXP_CONTAINS  |  Checks if a value is a partial match for a regular expression. | 
REGEXP_EXTRACT  |  Produces a substring that matches a regular expression. | 
REGEXP_EXTRACT_ALL  |  Produces an array of all substrings that match a regular expression. | 
REGEXP_INSTR  |  Finds the position of a regular expression match in a value, optionally starting the search at a given offset or occurrence. | 
REGEXP_REPLACE  |   Produces a STRING value where all substrings that match a regular expression are replaced with a specified value.  |  
REPEAT  |   Produces a STRING or BYTES value that consists of an original value, repeated.  |  
REPLACE  |   Replaces all occurrences of a pattern with another pattern in a STRING or BYTES value.  |  
REVERSE  |   Reverses a STRING or BYTES value.  |  
RIGHT  |   Gets the specified rightmost portion from a STRING or BYTES value.  |  
ROUND  |   Rounds X to the nearest integer or rounds X to N decimal places after the decimal point.  |  
RPAD  |   Appends a STRING or BYTES value with a pattern.  |  
RTRIM  |   Identical to the TRIM function, but only removes trailing characters.  |  
SAFE_ADD  |   Equivalent to the addition operator (X + Y), but returns NULL if overflow occurs.  |  
SAFE_CAST  |   Similar to the CAST function, but returns NULL when a runtime error is produced.  |  
SAFE_CONVERT_BYTES_TO_STRING  |   Converts a BYTES value to a STRING value and replace any invalid UTF-8 characters with the Unicode replacement character, U+FFFD.  |  
SAFE_DIVIDE  |   Equivalent to the division operator (X / Y), but returns NULL if an error occurs.  |  
SAFE_MULTIPLY  |   Equivalent to the multiplication operator (X * Y), but returns NULL if overflow occurs.  |  
SAFE_NEGATE  |   Equivalent to the unary minus operator (-X), but returns NULL if overflow occurs.  |  
SAFE_SUBTRACT  |   Equivalent to the subtraction operator (X - Y), but returns NULL if overflow occurs.  |  
SEC  |   Computes the secant of X.  |  
SECH  |   Computes the hyperbolic secant of X.  |  
SIGN  |  Produces -1 , 0, or +1 for negative, zero, and positive arguments respectively. | 
SIN  |   Computes the sine of X.  |  
SINH  |   Computes the hyperbolic sine of X.  |  
SOUNDEX  |   Gets the Soundex codes for words in a STRING value.  |  
SPLIT  |   Splits a STRING or BYTES value, using a delimiter.  |  
SQRT  |   Computes the square root of X.  |  
STARTS_WITH  |   Checks if a STRING or BYTES value is a prefix of another value.  |  
STDDEV  |   An alias of the STDDEV_SAMP function.  |  
STDDEV_POP  |  Computes the population (biased) standard deviation of the values. | 
STDDEV_SAMP  |  Computes the sample (unbiased) standard deviation of the values. | 
STRING (Timestamp)  |   Converts a TIMESTAMP value to a STRING value.  |  
STRING_AGG  |   Concatenates non-NULL STRING or BYTES values.  |  
STRPOS  |  Finds the position of the first occurrence of a subvalue inside another value. | 
SUBSTR  |   Gets a portion of a STRING or BYTES value.  |  
SUBSTRING  |  Alias for SUBSTR |  
SUM  |   Gets the sum of non-NULL values.  |  
TAN  |   Computes the tangent of X.  |  
TANH  |   Computes the hyperbolic tangent of X.  |  
Temporal filters  |  Access temporal elements of a table by using the Bigtable table name as a function. | 
TIMESTAMP  |   Constructs a TIMESTAMP value.  |  
TIMESTAMP_ADD  |   Adds a specified time interval to a TIMESTAMP value.  |  
TIMESTAMP_DIFF  |   Gets the number of unit boundaries between two TIMESTAMP values at a particular time granularity.  |  
TIMESTAMP_FROM_UNIX_MICROS  |   Similar to TIMESTAMP_MICROS, except that additionally, a TIMESTAMP value can be passed in.  |  
TIMESTAMP_FROM_UNIX_MILLIS  |   Similar to TIMESTAMP_MILLIS, except that additionally, a TIMESTAMP value can be passed in.  |  
TIMESTAMP_FROM_UNIX_SECONDS  |   Similar to TIMESTAMP_SECONDS, except that additionally, a TIMESTAMP value can be passed in.  |  
TIMESTAMP_MICROS  |   Converts the number of microseconds since 1970-01-01 00:00:00 UTC to a TIMESTAMP.  |  
TIMESTAMP_MILLIS  |   Converts the number of milliseconds since 1970-01-01 00:00:00 UTC to a TIMESTAMP.  |  
TIMESTAMP_SECONDS  |   Converts the number of seconds since 1970-01-01 00:00:00 UTC to a TIMESTAMP.  |  
TIMESTAMP_SUB  |   Subtracts a specified time interval from a TIMESTAMP value.  |  
TIMESTAMP_TRUNC  |   Truncates a TIMESTAMP or DATETIME value at a particular granularity.  |  
TO_BASE32  |   Converts a BYTES value to a base32-encoded STRING value.  |  
TO_BASE64  |   Converts a BYTES value to a base64-encoded STRING value.  |  
TO_CODE_POINTS  |   Converts a STRING or BYTES value into an array of extended ASCII code points.  |  
TO_FLOAT32  |   Converts the big-endian bytes of a 32-bit IEEE 754 floating point number into a FLOAT32 value.  |  
TO_FLOAT64  |   Converts the big-endian bytes of a 64-bit IEEE 754 floating point number into a FLOAT64 value.  |  
TO_HEX  |   Converts a BYTES value to a hexadecimal STRING value.  |  
TO_INT64  |   Converts the big-endian bytes of a 64-bit signed integer into an INT64 value.  |  
TO_JSON_STRING  |   Converts a SQL value to a JSON-formatted STRING value.  |  
TO_VECTOR32  |   Converts the big-endian bytes of one or more 32-bit IEEE 754 floating point numbers into an ARRAY<FLOAT32> value.  |  
TO_VECTOR64  |   Converts the big-endian bytes of one or more 64-bit IEEE 754 floating point numbers into an ARRAY<FLOAT64> value.  |  
TRANSLATE  |  Within a value, replaces each source character with the corresponding target character. | 
TRIM  |   Removes the specified leading and trailing Unicode code points or bytes from a STRING or BYTES value.  |  
TRUNC  |   Rounds a number like ROUND(X) or ROUND(X, N), but always rounds towards zero and never overflows.  |  
UNICODE  |  Gets the Unicode code point for the first character in a value. | 
UNIX_DATE  |   Converts a DATE value to the number of days since 1970-01-01.  |  
UNIX_MICROS  |   Converts a TIMESTAMP value to the number of microseconds since 1970-01-01 00:00:00 UTC.  |  
UNIX_MILLIS  |   Converts a TIMESTAMP value to the number of milliseconds since 1970-01-01 00:00:00 UTC.  |  
UNIX_SECONDS  |   Converts a TIMESTAMP value to the number of seconds since 1970-01-01 00:00:00 UTC.  |  
UNPACK  |  Expands the timestamped values in an input row into multiple rows, each row representing a different timestamp; and moves the timestamps into a `_timestamp` column. | 
UPPER  |   Formats alphabetic characters in a STRING value as uppercase. Formats ASCII characters in a BYTES value as uppercase.  |  
VAR_POP  |  Computes the population (biased) variance of the values. | 
VAR_SAMP  |  Computes the sample (unbiased) variance of the values. | 
VARIANCE  |   An alias of VAR_SAMP.  |