Формульная колонка в SeaTable
Одной из самых мощных функций SeaTable является колонка формул. С помощью формул вы можете автоматически преобразовывать, вычислять, объединять или суммировать значения других столбцов из текущей таблицы или даже из другой (связанной) таблицы той же базы. Кроме того, вы, конечно, можете добавить другие столбцы формул, которые берут результаты из существующих формальных столбцов и вычисляют их. Столбцы формулы, которые зависят от других столбцов, автоматически обновляются, как только значения в них изменяются.
В настоящее время SeaTable предлагает следующие функции в колонке "Формула":
- Константы
- Операнды
- Математические функции
- Текстовые функции
- Функции даты
- Логические функции
- Статистические функции
И набор функций ссылок в колонке "Формула ссылки":
- Функции связывания
Помимо перечисленных функций, в редакторе формул имеется один или несколько списков столбцов. Это столбцы текущей таблицы и связанные с ней столбцы другой таблицы в базе. Если щелкнуть на значке "+" рядом с ним, то имя столбца добавляется в качестве элемента в поле ввода в формате {ColumnName} или {LinkedTable.ColumnName}. Вы можете использовать этот элемент непосредственно в своей формуле. В качестве альтернативы можно, конечно, ввести имя столбца в виде {ColumnName} вручную.
В этой статье мы покажем вам полный обзор всех формул в SeaTable с подходящими примерами. Если вы ищете определенную функцию, вы можете использовать комбинацию клавиш
Коллекция формул SeaTable с примерами
Константы
Оператор | Описание | Примеры |
---|---|---|
e | Возвращает число Эйлера e=2.71828.... | = 3.71828183 |
pi | Возвращает число окружности Pi. | = 3.14159265 |
true() | Возвращает логическое значение 'true'. | = правда |
false() | Возвращает логическое значение 'false'. | = false |
Операнды
Оператор | Описание | Примеры |
---|---|---|
add(num1, num2) | Складывает два числовых значения (num1 и num2) и возвращает результат. | = 3 |
Альтернатива: + | = 3 |
|
subtract(num1, num2) | Вычитает одно числовое значение (num2) из другого (num1). | = 1 |
Альтернатива: - | = 1 |
|
multiply(num1, num2) | Перемножает два числовых значения. | = 12 |
Альтернатива: * | = 12 |
|
divide(num1, num2) | Делит одно числовое значение (num1) на другое (num2). | = 2.5 |
Альтернатива: / | = 1.5 |
|
mod(num1, num2) | Вычисляет остаток от деления. | = 3 |
Альтернатива: % | = 1 |
|
мощность(num1, num2) | Вычисляет мощность (num2) числа (num1). | = 9 |
Альтернатива: ^ | = 9 |
|
больше(num1, num2) | Проверяет, больше ли числовое значение (num1) другого (num2), и возвращает логическое значение 'true' или 'false'. | = false |
Альтернатива: > | = false |
|
lessthan(num1, num2) | Проверяет, меньше ли числовое значение (num1) другого (num2), и возвращает логическое значение 'true' или 'false'. | = правда |
Alternativ: < | = правда |
|
greatereq(num1, num2) | Проверяет, больше или равно числовое значение (num1) другому (num2), и возвращает логическое значение 'true' или 'false'. | = false |
Альтернатива: >= | = false |
|
lessthaneq(num1, num2) | Проверяет, меньше или равно ли числовое значение (num1) другому (num2), и возвращает логическое значение 'true' или 'false'. | = правда |
Alternativ: <= | = правда |
|
равно(число1, число2) | Проверяет, равны ли два значения (число1, число2), и возвращает логическое значение 'true' или 'false'. | = false |
Альтернатива: = | = false |
|
неравенство(число1, число2) | Проверяет, являются ли два значения (number1, number2) неравными, и возвращает логическое значение 'true' или 'false' в каждом случае. | = правда |
Альтернатива: <> | = правда |
|
concatenate(string1, string2, ...) | Конкатенирует несколько строк (строка 1, строка 2, ...) в одну строку. | = Linux - это здорово |
Альтернатива: & | = Linux - это здорово |
Математические функции
Оператор | Описание | Пример ввода | Результат |
---|---|---|---|
абс(число) | Возвращает абсолютное значение числа. | абс(-2) | 2 |
потолок(число, значение) | Округляет число до ближайшего целого числа или до ближайшего кратного заданному шагу (значению). Если один из аргументов не является числовым, формула возвращает пустое значение. | потолок(2.14) | 3 |
Если число точно кратно значению, то округление не производится. Если число и значение отрицательные, то округление происходит в сторону от 0. Если число отрицательное, а значение положительное, то округление происходит в сторону 0. | потолок(-2.14, 4) | 0 | |
чётный(число) | Присваивает вещественному числу (цифре) ближайшее большее четное число. | даже(2.14) | 4 |
exp(число) | Экспоненциальная функция для числа Эйлера e. Возвращает значение e, возведенное в степень заданного числа. | exp(1) | 2.71828... |
floor(число, значение) | Округляет число до ближайшего целого числа или до ближайшего кратного заданному шагу (значению). Если один из аргументов не является числовым, формула возвращает пустое значение. | пол(2.86) | 2 |
Если число точно кратно значению, округление не производится. Если знак числа положительный, то округление происходит в сторону 0. Если знак числа отрицательный, то округление происходит в сторону от 0. | floor(-3.14, 5) | -5 | |
int(number) | Присваивает вещественному числу (номеру) ближайшее меньшее целое число. | int(-3.14) | -4 |
lg(число) | Функция логарифма (числа) с основанием 10. | lg(100) | 2 |
ln(число) | Функция логарифма (числа) с числом Эйлера e в качестве основания. | ln(e) | 1 |
log(число, основание) | Функция (число) логарифма с определяемым основанием. | log(81, 3) | 4 |
Однако если основание не указано, эта функция работает точно так же, как lg(), т.е. с основанием 10. | log(1000) | 3 | |
нечётный(число) | Присваивает вещественному числу (номеру) ближайшее большее нечетное число. | нечет(-2.14) | -1 |
round(number, digits) | Округляет число до заданного количества десятичных знаков (цифр). Если десятичный знак (цифры) не указан, число округляется до 1-го места слева от десятичной точки. | круглый(3.14) | 3 |
Если задана положительная десятичная дробь (цифры), округляйте до цифры справа от десятичной точки. | round(3.14, 1) | 3.1 | |
Если задан отрицательный десятичный знак (цифры), округляется влево от десятичной точки. | round(3.14, -3) | 0 | |
round(99.1, -2) | 100 | ||
округление(число, цифры) | Округлите число в направлении нуля. Если десятичный знак (цифры) не указан, число округляется до 1-го места слева от десятичной точки. | округление(3.12, 1) | 3.1 |
округление(-3.15) | -3 | ||
округление(число, цифры) | Округляет число в большую сторону от нуля. Если десятичный знак (цифры) не указан, число округляется до 1-й цифры слева от десятичной точки. | округление(3.12, 1) | 3.2 |
раундап(-3.15) | -4 | ||
знак(число) | Проверяет, является ли число больше, равно или меньше 0. Возвращает значение 1, 0 и -1 соответственно. Другими словами, он возвращает знак числа, соответственно для '+', 'ноль' и '-' с 1, 0 и -1. | знак(-2) | -1 |
sqrt(число) | Возвращает квадратный корень из числа. | sqrt(81) | 9 |
sum(num1, num2, ...) | Возвращает сумму чисел (num1, num2, ...). | sum(7,8,9) | 24 |
Текстовые функции
Оператор | Описание | Пример ввода | Результат |
---|---|---|---|
exact(string1, string2) | Проверяет, являются ли две строки (string1, string2) абсолютно идентичными. Возвращает значения 'true' или 'false'. Учитывается верхний/нижний регистр. | exact('SeaTable', 'Seatable') | ложный |
find(findString, sourceString, startPosition) | Возвращает начальную позицию строки (findString) внутри другой строки (sourceString). Чувствительность к регистру. Без поиска возвращается 0. Если начальная позиция (startPosition) задана в десятичном виде, она округляется в меньшую сторону. Если ячейка в столбце для ключевого слова (findString) все еще пуста, возвращается 1. Если ячейка в столбце для целевой строки (sourceString) все еще пуста, возвращается пустое значение (''). | find('Sea', 'seaTable', 1) | 0 |
Поиск начнется с заданной 'startPosition'. Однако это 'startPosition' не влияет на результат: он всегда возвращает абсолютную начальную позицию. Если 'startPosition' строки, которую нужно найти (findString), было задано после фактической начальной позиции строки (sourceString), возвращается 0, потому что с этой позиции ничего не было найдено. | find('table', 'big table', 4) | 5 | |
find('table', 'big table', 6) | 0 | ||
left(string, count) | Возвращает заданное количество (count) символов в начале строки. | left('SeaTable', 3) | Море |
len(string) | Возвращает количество символов в строке. | len('SeaTable') | 8 |
lower(string) | Преобразует строку в строчные буквы. | lower('DeutscH') | немецкий |
mid(string, startPosition, count) | Возвращает указанное количество (count) символов из строки, начиная с указанной начальной позиции (startPosition). | mid('SeaTable - лучший', 1, 8) | SeaTable |
Начальная позиция (startPosition) и число (count) не должны быть пустыми, отрицательными или равными нулю. Однако, если startPosition и count заданы в десятичном виде, они округляются в меньшую сторону. Слишком большое заданное число (count) будет проигнорировано. | mid('SeaTable - лучший.', 10.9, 27.3) | самый лучший. | |
replace(sourceString, startPosition, count, newString) | Заменяет часть (count) строки (sourceString) с определенной начальной позиции (startPosition) на другую строку (newString). Количество (count) символов учитывается только для старой строки (sourceString), но не для новой строки (newString). | replace('SeaTable - лучший.', 1, 8, 'Seafile') | Seafile - лучший. |
Если значение count равно нулю, то новая строка просто добавляется с начальной позиции в старой строке. | replace('SeaTable - лучший.', 1, 0, 'Seafile') | SeafileSeaTable является лучшим. | |
rept(string, number) | Повторяет строку столько раз (число), сколько указано. | rept('Sea ', 3) | Море Море Море |
right(string, count) | Возвращает заданное количество (count) символов в конце строки. | right('SeaTable', 5) | Таблица |
search(findString, sourceString, startPosition) | Возвращает начальную позицию строки (findString) внутри другой строки (sourceString). Чувствительность случая не учитывается. Без поиска возвращается 0. Если начальная позиция (startPosition) задана в десятичном виде, она округляется в меньшую сторону. Если ячейка в столбце для ключевого слова (findString) все еще пуста, возвращается 1. Если ячейка в столбце для целевой строки (sourceString) все еще пуста, возвращается пустое значение (''). | search('Sea', 'seaTable', 1) | 1 |
Поиск начнется с заданной 'startPosition'. Однако это 'startPosition' не влияет на результат: он всегда возвращает абсолютную начальную позицию. Если 'startPosition' строки, которую нужно найти (findString), было задано после фактической начальной позиции строки (sourceString), возвращается 0, потому что с этой позиции ничего не было найдено. | search('table', 'big table', 4) | 5 | |
search('table', 'big table', 6) | 0 | ||
substitute(sourceString, oldString, newString, index) | Заменяет существующий текст (oldString) на новый текст (newString) в строке (sourceString). Если в строке (sourceString) имеется более одного текста (oldString), заменяется только 'index'-ый текст. Чувствительность к регистру соблюдается. | substitute('SeaTableTable', 'Table', 'file', 1) | SeafileTable |
Если индекс указан как 0 или не указан, все найденные части текста (oldString) заменяются новым текстом (newString). | substitute('SeaTableTable', 'Table', 'file') | Seafilefile | |
T(значение) | Проверяет, является ли значение текстом. Если да, то возвращается текст. Если нет, возвращаемое значение будет пустым. | T(123) | (пустой) |
T('123') | 123 | ||
текст(число, формат) | Преобразует число в текст и форматирует его в заданном формате. Формат может быть процент и число, доллар, евро и юань. | text(150, 'euro') | €150 |
При прямом преобразовании числа в проценты его абсолютное значение сохраняется. То есть, 50 конвертируется в 5000%. Однако если вы хотите получить 50%, вам все равно придется разделить число на 100 перед преобразованием. | text(50, 'percent') | 5000% | |
text(50/100, 'percent') | 50% | ||
trim(string) | Удаляет пробелы в начале и конце строки. | trim(' SeaTable ') | SeaTable |
верхний(строка) | Преобразует строку в буквы верхнего регистра. | upper('DeutscH') | ГЕРМАНИЯ |
значение(строка) | Преобразует текст (строку), представляющий число, в число. | значение('123') | 123 |
Функции даты
Оператор | Описание | Пример ввода | Результат |
---|---|---|---|
+ | Добавляет дни или продолжительность к дате с минутами или без них. Если в столбце даты нет минут, в качестве значения по умолчанию принимается 00:00 этого дня. | дата(2021, 1, 31)+1 | 2021-02-01 |
Например, если в колонке введена продолжительность 8 часов 20 минут {продолжительность} имеет: | дата(2021, 1, 31)+{длительность} | 2021-01-31 08:20 | |
- | Вычитает дни или продолжительность из даты с минутами или без них. Если в столбце даты нет минут, то 00:00 принимается за значение по умолчанию для этого дня. | дата(2021, 1, 31) - 30 | 2021-01-01 |
Например, если в колонке введена продолжительность 8 часов 20 минут {продолжительность} имеет: | дата(2021, 1, 31)-{длительность} | 2021-01-30 15:40 | |
При использовании {Date1}-{Date2} возвращается разница во времени в днях. | дата(2021, 1, 31)-дата(2020, 12, 23) | 39 | |
дата(год, месяц, день) | Возвращает дату в международном формате (ISO) из введенных года, месяца и дня. Если год вводится с двумя цифрами, он автоматически понимается как год в 1900-х годах. Если номер месяца или дня слишком большой (больше 12 или 31 соответственно), то эти месяцы или дни автоматически переводятся в следующий год или месяц. | дата(2021, 1, 3) | 2021-01-03 |
dateAdd(date, count, unit) | Добавляет указанное количество (счетчик) лет, месяцев, недель, дней, часов, минут или секунд к дате/времени. | dateAdd('2020-02-03', 2, 'days') | 2020-02-05 |
Совет: если вы хотите добавить сложную продолжительность (счетчик), например, 1 день 12 часов, вы можете преобразовать ее, например, в 24+12=36 часов и ввести в формулу как одну продолжительность (счетчик). Переведите продолжительность в наименьшую единицу измерения: в данном случае в часы. | dateAdd('2020-09-04 13:05:18', 36, 'hours') ODER dateAdd({form submission}, 36, 'hours') | 2020-09-06 01:05:18 | |
datedif(startDate, endDate, unit) | Вычисляет секунды, дни, месяцы или годы между двумя значениями даты. Необязательный аргумент единицы измерения может быть одним из следующих: S (секунды), D (полные дни), M (полные месяцы), Y (полные годы), YD (полные дни, без учета лет), YM (полные месяцы, без учета дней и лет), MD (полные дни, без учета месяцев и лет). | dateDif('2018-01-01', '2020-01-01') | 2 |
Необязательный аргумент единицы измерения может быть одним из следующих: S (секунды), D (полные дни), M (полные месяцы), Y (полные годы), YD (полные дни, без учета лет), YM (полные месяцы, без учета дней и лет), MD (полные дни, без учета месяцев и лет). | dateDif('2019-10-11', '2020-12-12', 'M') | 14 | |
день (дата) | Возвращает день даты в виде числа. Возвращаемое число находится в диапазоне от 1 до 31. | день('2020-01-03') | 3 |
дни(начальнаяДата, конечнаяДата) | Возвращает количество дней между двумя значениями даты (начальная дата и конечная дата). | days('2020-01-01', '2020-02-03') | 33 |
eomonth(startDate, months) | Определяет дату последнего дня месяца, который является указанным количеством (месяцев) месяцев после указанной даты (startDate). Если число (месяцев) задано как 0, то просто определяется последний день месяца. | eomonth('2020-01-01', 1) | 2020-02-29 |
Если число (месяцев) задано отрицательным, определяется дата последнего дня месяца, который содержит абсолютное число (месяцев) месяцев до указанной даты (startDate). | eomonth('2020-01-01', -1) | 2019-12-31 | |
час(дата) | Возвращает час времени (даты) в виде числа. Возвращаемое число находится в диапазоне от 0 до 23. | hour('2020-02-14 13:14:52') | 13 |
Если во времени (дате) нет часа, возвращается 0. | hour('2020-02-14') | 0 | |
часы(начальнаяДата, конечнаяДата) | Возвращает количество часов между двумя значениями даты (начальная дата и конечная дата). Минуты в значениях даты не учитываются. | hours('2020-02-14 13:14', '2020-02-14 15:14') | 2 |
Если в спецификации времени (дата начала или дата окончания) не указаны часы, автоматически предполагается 0 часов в этот день. | hours('2020-02-14', '2020-02-14 15:14') | 15 | |
минута(дата) | Возвращает минуты времени (даты) в виде числа. Возвращаемое число находится в диапазоне от 0 до 59. | minute('2020-02-14 13:14:52') | 14 |
Если во времени (дате) нет минут, возвращается 0. | minute('2020-02-14') | 0 | |
месяц (дата) | Возвращает месяц даты в виде числа. Возвращаемое число находится в диапазоне от 1 (январь) до 12 (декабрь). | month('2020-02-14 13:14:52') | 2 |
месяцы(начальнаяДата, конечнаяДата) | Возвращает количество месяцев между двумя значениями даты (начальная дата и конечная дата). Дни и время в значениях даты не учитываются. | months('2020-02-01 13:14', '2020-03-31 15:54') | 1 |
Если в значениях дат (начальнаяДата, конечнаяДата) не указан месяц, в качестве месяца автоматически принимается январь. | месяцы('2020', '2021') | 12 | |
networkdays(startDate, endDate, holiday1, holiday2, ...) | Возвращает количество целых рабочих дней между двумя значениями даты (начальная дата и конечная дата). Вы также можете определить праздники, отличные от субботы и воскресенья (holiday1, holiday2 и т.д.), они также будут вычитаться. Если в расчет не нужно включать праздничные дни, эти параметры можно просто опустить. | networkdays('2020-01-01', '2020-01-07','2020-01-01') | 4 |
Обратите внимание, что указанный последний день (endDate) также учитывается в формуле. То есть, например, в данной формуле учитываются три рабочих дня: 7, 8 и 9 сентября 2020 года. | networkdays('2020-09-07', '2020-09-09') | 3 | |
сейчас() | Возвращает текущую дату и время. Эта колонка обновляется автоматически только после перезагрузки базы. | сейчас() | 2020-09-07 12:59 |
секунда(дата) | Возвращает секунды времени (даты) в виде числа. Возвращаемое число находится в диапазоне от 0 до 59. | second('2020-02-14 13:14:52') | 52 |
сегодня() | Возвращает текущую дату. Эта колонка обновляется автоматически только после перезагрузки базы. | сегодня() | 2020-09-07 |
Эта функция удобна для расчета продолжительности времени между определенной датой и временем и настоящим моментом. При каждой перезагрузке или пересчете базы расчет обновляется. | networkdays('2020-09-01', today()) | 4 | |
weekday(date, weekStart) | Возвращает день недели даты в виде числа. Возвращаемое число - от 1 до 7. Вы можете определить первый день недели (WeekStart): Понедельник ('Monday') или Воскресенье ('Sunday' или опустить, так как по умолчанию начало в воскресенье). Третий вариант невозможен. Верхний/нижний регистр не учитывается. | weekday('2020-01-01', 'Monday') | 3 |
Если "начало недели" не указано или если указано "начало недели", отличное от "понедельника" или "воскресенья", всегда предполагается, что это "воскресенье". Поэтому, если это должен быть "понедельник", введите "понедельник"; если это должно быть "воскресенье", вы можете опустить этот параметр. | weekday('2020-01-01', 'Thursday') ИЛИ weekday('2020-01-01') | 4 | |
weeknum(date, return_type) | Возвращает абсолютный номер недели даты в виде числа. Возвращаемое число находится в диапазоне от 1 до 53. Здесь вы можете определить первый день недели (тип_возврата). Введите число 1 или 2, или от 11 до 17, и 21 в качестве "return_type", чтобы определить начало недели: 1/воскресенье, 2/понедельник, 11/понедельник, 12/вторник, 13/среда, 14/четверг, 15/пятница, 16/суббота, 17/воскресенье. Если необходимо вернуть номер недели в соответствии со стандартом ISO, укажите в качестве "return_type" число 21 или используйте функцию isoweeknum. | weeknum('2020-01-12', 11) | 2 |
Если не указан тип 'return_type', всегда предполагается, что это 'Sunday'. | weeknum('2020-01-12') | 3 | |
isoweeknum(дата) | Возвращает номер недели ISO (KW) даты в виде числа. | isoweeknum('2021-01-04') | 1 |
Отличие от функции weeknum(): с помощью функции isoweeknum() вы иногда также получаете номер недели, который все еще находится в предыдущем году. В данном примере: 1 января 2021 года относится к 53-й календарной неделе 2020 года в соответствии со стандартом ISO. | isoweeknum('2021-01-01') | 53 | |
год (дата) | Возвращает год даты в виде числа. | год('2020-01-01') | 2020 |
Логические функции
Оператор | Описание | Пример ввода | Результат |
---|---|---|---|
and(logical1, logical2, ...) | Проверяет, все ли аргументы (logical1, logical2, ...) являются истинными (действительными, непустыми и ненулевыми). Если да, то возвращается 'true', иначе 'false'. | and(1, '', 2) | ложный |
if(logical, value1, value2) | Проверяет, является ли аргумент (логический) истинным, и если да, возвращает первое значение (value1), а если нет, возвращает второе значение (value2). Внимание: два значения (value1 и value2) должны быть одного типа, например, оба должны быть строкой или числом. В противном случае первый результат определит тип столбца, а там, где он должен добавить второе значение, будет заполнено пустое значение. | if(1>2, 3, 4) | 4 |
Для условия (логического) допускается только сравнение с. Если вы введете только условие (логическое) и первое значение (value1): оно вернет первое значение (value1), если условие (логическое) истинно; и вернет пустое значение (''), если условие (логическое) ложно. | if({Budget}>{Price}, 'Yes') | Да | |
ifs(logical1, value1, logical2, value2, ...) | Prüft, ob eine oder mehrere Bedingungen (logical1, logical2, ...) zutreffen und gibt einen Wert (value1, value2, ...) zurück, der mit zur ersten WAHR-Bedingung passt. Versuchen Sie möglichst alle zurückzugebenen Werte (value1, value2) in den gleichen Typen (entweder alles "string" oder alles "number") anzugeben, wie z.B. in ifs({Area}=0,"mini",{Area}<=100,"small",{Area}1000,"large"), ist das Ergebnis immer "string", oder in dem Beispiel rechts, ist das Ergebnis immer "number". Wenn Sie aber Nummer als String gegeben haben, funktioniert die ifs Funktion auch, aber in diesem Fall wird keine Summe mehr automatisch für diese Spalte berechnet, da diese dann als String wahrgenommen werden. | ifs( 1>2, 3, 5>4, 9) | 9 |
not(boolean) | Меняет логическое значение (булево). Другими словами: преобразует 'true' в 'false' и 'false' в 'true'. | not(and(1, '', 2)) | правда |
or(logical1, logical2, ...) | Проверяет, является ли хотя бы 1 из аргументов (value1, value2, ...) истинным (действительным, непустым и ненулевым) и в этом случае возвращает 'true'. Если все аргументы ложны, то возвращается 'false'. | or(1, '', 2) | правда |
switch(logical, matcher1, value1, matcher2, value2, ..., default) | Оценивает выражение (логическое) против списка значений (matcher) и возвращает результат (значение), который соответствует первому совпадающему значению. Если совпадения нет, то возвращается необязательное значение по умолчанию. Должны быть указаны как минимум 3 параметра (логический, матрица, значение). | switch({grades}, 1, "очень хорошо", 2, "хорошо", 3, "удовлетворительно", 4, "сдано", "не сдано") | Очень хорошо |
Если в списке значений (matcher) есть несколько одинаковых значений, учитывается только первое совпадение. | switch(int(68/10), 6, 'OK', 6, 'KO') | OK | |
xor(logical1, logical2, ...) | Возвращает контравалентность всех аргументов. Другими словами: Проверяет, является ли количество истинных аргументов (логических) нечетным, и возвращает значение 'true'. | xor(1, 0, 2<1, 1) | ложный |
Статистические функции
Оператор | Описание | Примеры |
---|---|---|
average(number1, number2, ...) | Возвращает среднее значение чисел (число1, число2, ...). | = 3 |
count(number1, number2, ...) | Возвращает количество чисел (number1, number2, ...). Учитываются только действительные и непустые числа. В этом примере '' - пустое значение, а "3" - не число, а текст. | = 2 |
counta(textORnumber1, textORnumber2, ...) | Подсчитывает количество непустых ячеек (textORnumber1, textORnumber2, ...). В этих ячейках может быть текст или число. В данном примере 1 и 2 - это числа, '3' - текст, а '' - пустое значение. | = 3 |
countall(textORnumber1, textORnumber2, ...) | Подсчитывает количество элементов (textORnumber1, textORnumber2, ...), включая числа (1, 2), текст ('3') и пустые ячейки (''). | = 4 |
countblank(textORnumber1, textORnumber2, ...) | Подсчитывает количество пустых ячеек. | = 1 |
countItems("column-name") | Подсчитывает количество элементов в ячейке. Поддерживаемые типы столбцов: множественный выбор, сотрудник, файл и изображение. | = 6 |
max(number1, number2, ...) | Возвращает наибольшее значение из указанных чисел (number1, number2, ...). | = 4 |
min(number1, number2, ...) | Возвращает наименьшее значение из указанных чисел (number1, number2, ...). | = -1 |
large(num1, num2, ..., k) | Возвращает k-большее значение из списка чисел (num1, num2, ...). В данном примере: large(35, 92, 10, 2) возвращает 2-самое большое значение из (35, 92, 10), которое равно 35. | = 35 |
small(num1, num2, ..., k) | Возвращает k-меньшее значение из списка чисел (num1, num2, ...). В данном примере: small(9, 2, -7, -3, 3) возвращает 3 наименьшее значение из (9, 2, -7, -3), которое равно 2. | = 2 |
Функции связывания
Функции ссылок можно использовать в виде формулы или задать их более простым способом с помощью столбца "Формула ссылки".
Оператор | Описание | Пример ввода |
---|---|---|
countlinks("Column", [condition]) | Подсчитывает связанные записи в заданном столбце ссылок. Записи можно отфильтровать с помощью необязательного параметра condition([условие]). В примере: В текущей таблице есть связующая колонка "Спикеры". В одной из его ячеек находится несколько связанных записей. Теперь мы хотим подсчитать, сколько ссылок есть в каждой ячейке, где "Цена" в связанной записи больше 500. | = 3 (Количество записей, связанных с колонкой "Динамики", где "Цена" больше 500). |
rollup("Column", "Other column", summary, [condition]) | Возвращает оцененное значение связанных записей в других таблицах. При связывании из столбца "Столбец" оцениваются записи в столбце "Другой столбец" в связанной таблице. Можно использовать следующие методы подведения итогов: 'average', 'concatenate', 'count', 'max', 'min' и 'sum'. По желанию можно применить условия фильтрации. В примере: В текущей таблице есть колонка 'Speakers', которая связана с другой таблицей. Поскольку каждый "Спикер" связан с несколькими записями, мы хотим выяснить, при "Цене" меньше 500, какова наибольшая "Мощность" для каждого "Спикера". | = 80 (Наибольшее значение из записей, связанных с колонкой "Динамики" в "Power", где "Цена" меньше 500). |
lookup(findmax("Колонка", "Другая колонка"), "Цель") | Ищет наибольшее значение в связанном столбце ("Другой столбец") и возвращает значение в той же строке из другого столбца ("Цель"). Укажите, какой связывающий столбец ("Столбец") и какой связанный столбец ("Другой столбец") и целевой столбец ("Цель") будут использоваться. В примере: В текущей таблице есть колонка "Speakers", которая связана с другой таблицей. Поскольку каждый "Спикер" связан с несколькими записями, мы хотим выяснить, какую "Цену" имеет каждый "Спикер" за свою самую большую "Мощность". | = 350 (Возвращает наибольшее значение "Цена" в "Мощность", связанное с колонкой "Динамики"). |
lookup(findmin("Колонка", "Другая колонка"), "Цель") | Ищет наименьшее значение в связанном столбце ("Другой столбец") и возвращает значение в той же строке из другого столбца ("Цель"). Укажите, какой связывающий столбец ("Столбец") и какой связанный столбец ("Другой столбец") и целевой столбец ("Цель") будут использоваться. В примере: В текущей таблице есть колонка "Speakers", которая связана с другой таблицей. Поскольку каждый "Спикер" связан с несколькими записями, мы хотим выяснить, какую "Цену" имеет каждый "Спикер" за свою наименьшую "Мощность". | = 210 (Цена" наименьшего значения в "Power", связанного с колонкой "Speakers"). |