# Поле «Длительность» в Baserow: форматы времени и формулы

> Baserow хранит время как отдельный тип данных: 2 часа 30 минут вместо 2.5, поддерживает отрицательные значения и десять форматов отображения от h:mm до d h m s.

Source: https://opennix.org/docs/baserow/field-types/duration-field/


Поле «Длительность» хранит промежуток времени - 2 часа 30 минут, 45 секунд или 3 дня - как отдельный тип данных, а не как обычное число, поддерживает отрицательные значения и умеет отображать время в десяти форматах от `h:mm` до `d h m s`. Статья описывает, что такое поле «Длительность», как его добавить и вводить данные, какие форматы отображения доступны и как использовать длительность в формулах.

![Добавление поля «Длительность» в Baserow](/images/baserow/field-types/duration-field-add-field.png)

## Что такое поле «Длительность»

Поле «Длительность» предназначено для хранения промежутка времени - например, 2 часа 30 минут, 45 секунд или 3 дня.

В отличие от [числового поля](/docs/baserow/field-types/number-field/), оно понимает единицы времени, поэтому позволяет форматировать отображение и выполнять вычисления, связанные со временем. Это удобно для учёта продолжительности задач и проектов, длительности звонков и встреч, длины видео и событий, а также для журналов учёта времени.

Поле «Длительность» также поддерживает отрицательные значения - это полезно для корректировок по времени или обратного отсчёта.

## Как добавить поле «Длительность»

1. В таблице нажмите на значок плюса `+`, чтобы [добавить новое поле](/docs/baserow/fields/adding-a-field/).
2. Выберите **Длительность** из выпадающего списка типов поля.
3. Задайте имя поля (например, «Продолжительность задачи»).
4. Нажмите **Создать**.

## Как вводить данные

Значение длительности можно ввести в ячейку несколькими способами:

- **Быстрый ввод**: наберите время с сокращениями единиц (например, `1h 30m`, `3d 45s`, `1:23:45`);
- **В секундах**: введите обычное число (например, `90`) - поле распознает его как секунды и автоматически отформатирует по текущим настройкам (например, `1:30`).

Чтобы ввести отрицательную длительность, добавьте перед значением знак минус (например, `-1h 30m`).

## Форматы длительности

Формат отображения длительности настраивается в [меню настройки поля](/docs/baserow/fields/field-customization/). Это удобно, чтобы привести вид данных к единому стандарту, не меняя само хранимое значение.

| Формат | Пример | Описание |
|---|---|---|
| `h:mm` | 1:23 | Часы и минуты |
| `h:mm:ss` | 1:23:40 | Часы, минуты и секунды |
| `h:mm:ss.s` | 1:23:40.0 | ...и децисекунды |
| `h:mm:ss.ss` | 1:23:40.00 | ...и сантисекунды |
| `h:mm:ss.sss` | 1:23:40.000 | ...и миллисекунды |
| `d h` | 1d 2h | Дни и часы |
| `d h:mm` | 1d 2:34 | Дни, часы и минуты |
| `d h:mm:ss` | 1d 2:34:56 | Дни, часы, минуты и секунды |
| `d h m` | 1d 2h 3m | Дни, часы и минуты (сокращённо) |
| `d h m s` | 1d 2h 3m 4s | Дни, часы, минуты и секунды (сокращённо) |

## Поле «Длительность» в формулах

Поле «Длительность» без ограничений работает в [полях формулы](/docs/baserow/formula/understanding-formulas/) для вычислений.

- **Арифметика**: умножение (`*`) и деление (`/`) масштабируют длительность (например, `field('Продолжительность задачи') * 3`);
- **Вычисления с датами**: можно найти интервал между двумя датами. Формула вида `today() - field('Дата начала')` вернёт длительность, которую затем можно отформатировать в днях;
- **Преобразование в число**: функция `tonumber()` переводит длительность в общее число **секунд** - это необходимо для более сложных расчётов, например для вычисления почасовой ставки: `field('Оплата проекта') / (tonumber(field('Затраченное время')) / 3600)`.

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

**В чём разница между полем «Длительность» и числовым полем?** [Числовое поле](/docs/baserow/field-types/number-field/) хранит обычное число (например, «1.5»). Поле «Длительность» понимает единицы времени и хранит значение как «1 час 30 минут». Используйте поле «Длительность», когда нужно учитывать время и показывать его в удобочитаемом формате (`h:mm:ss`), а не в виде десятичной дроби.

**Как просуммировать колонку значений длительности?** Чтобы получить суммарную длительность по связанным строкам, используйте [поле «Свод» (Rollup)](/docs/baserow/field-types/rollup-field/): в настройке свода выберите нужное поле «Длительность» и функцию `sum`.

**Как ввести отрицательную длительность?** Просто добавьте знак минус (`-`) перед значением - так же, как в числовом поле (например, `-1h 30m` или `-90`).

## Что дальше

Освоив учёт времени через поле «Длительность», сравните его с [числовым полем](/docs/baserow/field-types/number-field/) или загляните в [«Поле даты и времени»](/docs/baserow/field-types/date-and-time-fields/), чтобы фиксировать конкретные моменты, а не промежутки. Раздел [«Обзор типов полей Baserow»](/docs/baserow/fields/baserow-field-overview/) поможет сравнить длительность с другими вычисляемыми и базовыми типами данных.

