This section offers a function cheat sheet, where you can quickly search all available functions and their basic usage methods.
This section covers common numeric processing functions, including mathematical operations, statistical calculations, etc.
Name | Description | Input | Output | Example |
---|---|---|---|---|
SUM | Adds numbers together. Equivalent to number1 + number2 + ... | number1, [number2, ...] |
Number | SUM(100, 200, 300) => 600 |
AVERAGE | Returns the average value of the numbers. | number1, [number2, ...] |
Number | AVERAGE(100, 200, 300) => 200 |
MAX | Returns the maximum value among the given numbers. | number1, [number2, ...] |
Number | MAX(100, 200, 300) => 300 |
MIN | Returns the minimum value among the given numbers. | number1, [number2, ...] |
Number | MIN(100, 200, 300) => 100 |
ROUND | Rounds a value to a specified number of decimal places. | value, [precision] |
Number |
|
ROUNDUP | Always rounds up, away from zero. | value, [precision] |
Number |
|
ROUNDDOWN | Always rounds down, towards zero. | value, [precision] |
Number |
|
CEILING | Returns the nearest integer multiple that is greater than or equal to the value. | value, [significance] |
Number |
|
FLOOR | Returns the nearest integer multiple that is less than or equal to the value. | value, [significance] |
Number |
|
EVEN | Returns the smallest even number that is greater than or equal to the given value. | value |
Number |
|
ODD | Rounds positive values up to the nearest odd number, and negative values down to the nearest odd number. | value |
Number |
|
INT | Returns number1 if the logical argument is true, otherwise returns number2. Can also be used to create nested IF statements and to check if a cell is empty. | value |
Number |
|
ABS | Returns the absolute value. | value |
Number | ABS(-1) => 1 |
SQRT | Returns the square root of a non-negative number. | value |
Number | SQRT(4) => 2 |
POWER | Calculates the specified base to the specified power. | value |
Number | POWER(2) => 4 |
EXP | Calculates Euler's number (e) to the specified power. | value |
Number |
|
LOG | Calculates the logarithm of a value in the provided base. If not specified, the base defaults to 10. | value, [base=10] |
Number |
|
MOD | Returns the remainder of dividing the first argument by the second. | value, divisor |
Number |
|
Here, you'll find common functions related to text processing, such as string manipulation, formatting, etc.
Name | Description | Input | Output | Example |
---|---|---|---|---|
CONCATENATE | Joins multiple value type arguments into a single text value. | text1, [text2, ...] |
Text | CONCATENATE("Hello ", "Teable") => Hello Teable |
FIND | Finds the position of a substring in the specified text. Returns 0 if the substring is not found. | stringToFind, whereToSearch, [startFromPosition] |
Number | FIND("Teable", "Hello Teable") => 7 |
SEARCH | Finds the position of a substring in the specified text. Returns empty if the substring is not found. Similar to FIND, but SEARCH returns 0 when the substring is not found. | stringToFind, whereToSearch, [startFromPosition] |
Text or Empty | SEARCH("Teable", "Hello Teable") => 7 |
MID | Extracts a specified number of characters from a specified position. | text, whereToStart, count |
Text | MID("Hello Teable", 6, 6) => "Teable" |
LEFT | Extracts a specified number of characters from the beginning of the string. | text, count |
Text | LEFT("2023-09-06", 4) => "2023" |
RIGHT | Extracts a specified number of characters from the end of the string. | text, count |
Text | RIGHT("2023-09-06", 5) => "09-06" |
REPLACE | Replaces a specified number of characters starting at a specified position with replacement text. | text, whereToStart, count, replacement |
Text | REPLACE("Hello Table", 7, 5, "Teable") => "Hello Teable" |
REGEXP_REPLACE | Replaces all substrings that match a regular expression with replacement text. | text, regular_expression, replacement |
Text | REGEXP_REPLACE("Hello Table", "H.* ", "") => "Teable" |
SUBSTITUTE | Replaces old text with new text. An index number can be specified to replace a specific occurrence of the old text. If no index number is specified, all occurrences of the old text are replaced. | text, oldText, newText, [index] |
Text | SUBSTITUTE("Hello Table", "Table", "Teable") => "Hello Teable" |
LOWER | Converts a string to lowercase. | text |
Text | LOWER("Hello Teable") => "hello teable" |
UPPER | Converts a string to uppercase. | text |
Text | UPPER("Hello Teable") => "HELLO TEABLE" |
REPT | Repeats a string a specified number of times. | text, number |
Text | REPT("Hello!", 3) => "Hello!Hello!Hello!" |
TRIM | Removes whitespace from the beginning and end of a string. | text |
Text | TRIM(" Hello ") => "Hello" |
LEN | Counts the number of characters in a string. | text |
Number | LEN("Hello") => 5 |
T | Returns the argument if it is text, otherwise returns null. | value |
Text or Empty |
|
ENCODE_URL_COMPONENT | Replaces certain characters with their percent-encoded equivalents for URL or URI construction. Does not encode: - _ . ~ | value |
Text | ENCODE_URL_COMPONENT("Hello Teable") => "Hello%20Teable" |
Logical functions mainly involve conditional judgments and logical operations. This section details the use of functions like IF
, AND
, OR
, etc.
Name | Description | Input | Output | Example |
---|---|---|---|---|
IF | Returns value1 if the logical argument is true, otherwise returns value2 . Can also be used to create nested IF statements and to check if a cell is empty. |
logical, value1, value2 |
String | Number | Boolean | Datetime |
|
SWITCH | Matches an input expression against a series of potential values and returns the corresponding result. A default value can be returned if the input expression matches none of the defined patterns. Can replace many nested IF() formulas in many cases. | expression, [pattern, result]..., [default] |
String | Number | Boolean | Datetime | SWITCH("B", "A", "Value A", "B", "Value B", "Default Value") => "Value B" |
AND | Returns true if all arguments are true; otherwise, returns false. | logical1, [logical2, ...] |
Boolean |
|
OR | Returns true if any argument is true. | logical1, [logical2, ...] |
Boolean |
|
XOR | Returns true if an odd number of arguments are true. | logical1, [logical2, ...] |
Boolean |
|
NOT | Reverses the logical value of its argument. | boolean |
Boolean |
|
BLANK | Returns a null value. | - |
null |
|
ERROR | Returns an error value. | message |
Error | IF(2 > 3, "Yes", ERROR("Calculation")) => "#ERROR: Calculation" |
IS_ERROR | Returns true if the expression causes an error. | expr |
Boolean | IS_ERROR(ERROR()) => true |
Date functions help users handle and transform date and time data. This section covers operations such as adding, subtracting, and formatting dates.
Name | Description | Input | Output | Example |
---|---|---|---|---|
TODAY | Returns the current date. | - |
Datetime | TODAY() => "2023-09-08 00:00" |
NOW | Returns the current date and time. | - |
Datetime | NOW() => "2023-09-08 16:50" |
YEAR | Returns the four-digit year of the date. | date |
Number | YEAR("2023-09-08") => 2023 |
MONTH | Returns the month of the date as a number between 1 (January) and 12 (December). | date |
Number | MONTH("2023-09-08") => 9 |
WEEKNUM | Returns the week number of the year. | date |
Number | WEEKNUM("2023-09-08") => 36 |
WEEKDAY | Returns the day of the week as an integer between 0 and 6. An optional second parameter ("Sunday" or "Monday") can be provided to start the week on that day. | date, [startDayOfWeek] |
Number | WEEKDAY("2023-09-08", "Monday") => 5 |
DAY | Returns the day of the month of the date as a number between 1-31. | date |
Number | DAY("2023-09-08") => 8 |
HOUR | Returns the hour of the date as a number between 0 (12:00am) and 23 (11:00pm). | date |
Number | HOUR("2023-09-08 16:50") => 16 |
MINUTE | Returns the minute of the date as an integer between 0 and 59. | date |
Number | MINUTE("2023-09-08 16:50") => 50 |
SECOND | Returns the second of the date as an integer between 0 and 59. | date |
Number | SECOND("2023-09-08 16:50:30") => 30 |
FROMNOW | Calculates the number of days from the current date to another date. | date, unit |
Number | FROMNOW({Date}, "day") => 25 |
TONOW | Calculates the number of days from another date to the current date. | date, unit |
Number | TONOW({Date}, "day") => 25 |
DATETIME_DIFF | Returns the difference in specified units between two dates. The default unit is seconds. (See list of unit specifiers.) | date1, date2, [unit] |
Number | DATETIME_DIFF("2022-08-01", "2023-09-08", "day") => 403 |
WORKDAY | Returns the workday count to the start date, excluding specified holidays | date, count, [holidayStr] |
Datetime | WORKDAY("2023-09-08", 200) => "2024-06-14 00:00:00" |
WORKDAY_DIFF | Returns the number of workdays between date1 and date2. Workdays exclude weekends and an optional list of holidays, formatted as a comma-separated string of ISO-formatted dates. | date1, date2, [holidayStr] |
Number | WORKDAY_DIFF("2023-06-18", "2023-10-01") => 75 |
IS_SAME | Compares two dates to a unit and determines if they are the same. If so, returns true, otherwise returns false. | date1, date2, [unit] |
Boolean | IS_SAME("2023-09-08", "2023-09-10") => false |
In addition to the categorized functions above, this section will introduce some functions that handle arrays or other specific types of data.
Function Name | Description | Input | Output | Example |
---|---|---|---|---|
COUNTALL | Returns the count of all elements, including text and blanks. | value1, [value2, ...] |
Number | COUNTALL(100, 200, "", "Teable", TRUE()) => 5 |
COUNTA | Returns the count of non-empty values. This function counts both numbers and text values. | value1, [value2, ...] |
Number | COUNTA(100, 200, 300, "", "Teable", TRUE) => 4 |
COUNT | Returns the count of numeric items. | value1, [value2, ...] |
Number | COUNT(100, 200, 300, "", "Teable", TRUE) => 3 |
ARRAY_JOIN | Joins the array of rollup items into a string using a separator. | array, [separator] |
String | ARRAY_JOIN(["Tom", "Jerry", "Mike"], "; ") => "Tom; Jerry; Mike" |
ARRAY_UNIQUE | Returns only the unique items in an array. | array |
Array | ARRAY_UNIQUE([1, 2, 3, 2, 1]) => [1, 2, 3] |
ARRAY_FLATTEN | Flattens an array by removing any array nesting. All items become elements of a single array. | array |
Array | ARRAY_FLATTEN([1, 2, " ", 3, true], ["ABC"]) => [1, 2, 3, " ", true, "ABC"] |
ARRAY_COMPACT | Removes empty strings and null values from an array. Retains "false" and strings containing one or more whitespace characters. | array |
Array | ARRAY_COMPACT([1, 2, 3, "", null, "ABC"]) => [1, 2, 3, "ABC"] |
RECORD_ID | Returns the ID of the current record. | - |
String | RECORD_ID() => "recxxxxxx" |