Поле свода (Rollup) в Baserow: расчёты по связанным строкам

Поле свода (Rollup) выполняет вычисление - сумму, среднее, подсчёт и другие функции - по значениям всех строк, связанных через поле «связь с таблицей», и показывает результат прямо в текущей таблице; статья объясняет, чем такое поле отличается от подстановки и подсчёта, как его создать и как читать таблицу доступных функций.

Настройка нового поля свода в Baserow

Что такое поле свода

Поле свода работает поверх уже настроенного поля «связь с таблицей» . Если поле подстановки просто отображает одно значение из связанной строки (например, email), то поле свода выполняет вычисление сразу по всем связанным строкам - сумму, среднее, минимум, максимум и так далее.

Поле свода доступно только для чтения: значение нельзя отредактировать вручную. Это автоматический расчёт, который пересчитывается каждый раз, когда меняются данные в связанных строках.

Как создать поле свода

Обязательное условие

Прежде чем создавать поле свода, в таблице уже должно быть настроено поле «связь с таблицей» .

Шаги

  1. В таблице нажмите на значок «+», чтобы добавить новое поле .
  2. Введите название поля, например «Общая сумма» или «Средний рейтинг».
  3. Выберите Свод (Rollup) из выпадающего списка типов поля.
  4. В панели настройки укажите три параметра:
    • Поле связи: выберите поле «связь с таблицей» , которое будет источником связанных строк;
    • Поле для свода: выберите конкретное поле из связанной таблицы, значения которого нужно агрегировать (например, «Сумма заказа»);
    • Функция свода: выберите нужное вычисление (например, «sum»).
  5. Нажмите Создать.

Новое поле сразу заполнится результатом вычисления и останется доступным только для чтения.

Функции свода

Поле свода поддерживает несколько функций агрегации. Выбранная функция должна быть совместима с типом поля, которое агрегируется: например, суммировать (sum) можно только числовое поле .

ФункцияОписаниеСовместимые типы полей
sumСуммирует все значенияЧисло
avgСчитает среднее по всем значениямЧисло
countВозвращает количество связанных строкЛюбой тип
maxВозвращает наибольшее значениеЧисло , Дата , Текст
minВозвращает наименьшее значениеЧисло , Дата , Текст
anyВозвращает «истина», если хотя бы одно связанное логическое значение истинноЛогическое
everyВозвращает «истина», если истинны все связанные логические значенияЛогическое
stddev_sampleВыборочное стандартное отклонениеЧисло
stddev_popСтандартное отклонение генеральной совокупностиЧисло
variance_sampleВыборочная дисперсияЧисло
variance_popДисперсия генеральной совокупностиЧисло

Пример: клиенты и заказы

Это самый наглядный способ показать суть свода. Допустим, есть две таблицы, и нужно увидеть общую сумму, потраченную каждым клиентом, прямо в таблице «Клиенты».

  1. Клиенты: содержит поле «Имя клиента».
  2. Заказы: содержит «Номер заказа», числовое поле «Сумма заказа» и поле связи «[Связь] Клиент».

Решение: в таблице «Клиенты» создаётся поле свода с названием «Общая сумма»:

  • Поле связи: выбирается поле «[Связь] Клиент»;
  • Поле для свода: выбирается поле «Сумма заказа» из таблицы «Заказы»;
  • Функция свода: выбирается sum.

Поле «Общая сумма» автоматически считает и показывает сумму всех связанных заказов для каждого клиента (например, «15 000 ₽»).

Часто задаваемые вопросы

В чём разница между сводом, подстановкой и подсчётом? Все три типа опираются на поле «связь с таблицей» , но решают разные задачи: «связь с таблицей» создаёт саму связь между строками; подстановка отображает конкретное значение из связанной строки (например, email клиента); подсчёт считает количество связанных строк (например, «3 заказа»); свод выполняет вычисление по связанным строкам (например, сумму «Суммы заказа»).

Чем функция count в поле свода отличается от отдельного поля подсчёта? Результат одинаковый. Поле подсчёта - это отдельный упрощённый тип поля именно для этой одной задачи, а функция count в поле свода - лишь одна из множества доступных функций.

Почему поле свода нельзя редактировать? Это поле только для чтения, которое показывает результат вычисления. Чтобы изменить значение, нужно изменить данные в связанных строках - например, добавить новый заказ или изменить сумму существующего.

Что дальше

Изучите поле «связь с таблицей» , чтобы понять, как строятся связи между таблицами, поле подстановки - для отображения отдельных значений из связанных строк, и поле подсчёта - для простого подсчёта связанных строк. Раздел «Обзор типов полей» поможет сравнить свод с другими вычисляемыми полями, а «Настройка полей» - освоить сортировку, фильтрацию и скрытие для любого типа поля.

Проверено OpenNix LLC · Обновлено