now¶
now
возвращает текущую дату и время с использованием часового пояса отчёта Glarus BI.
Создание условной логики с использованием текущей даты и времени¶
Допустим у вас есть некоторые данные о проекте, и вы хотите добавить столбец статуса для каждой задачи. Мы предположим, что сегодняшняя дата и время - 22 ноября 2024 года, 12:00:00.
Задача | Старт | Срок исполнения | Статус |
---|---|---|---|
Задача А | 1 ноября, 2024, 12:00:00 | 30 ноября, 2024, 12:00:00 | В работе |
Задача Б | 15 ноября, 2024, 12:00:00 | 19 ноября, 2024, 12:00:00 | Требуется продление |
Задача В | 22 ноября, 2024, 12:00:00 | 22 ноября, 2024, 12:00:00 | Истекает сейчас |
Чтобы отметить задачу в процессе выполнения, вы можете использовать выражение:
Чтобы проверить, нужно ли вам попросить о продлении:
Если же вам хочется выразить свои эмоции (и у вас есть данные в реальном времени), вы можете отметить задачи, которые должны быть выполнены прямо сейчас:
Чтобы настроить столбец Статус, который объединяет все три ситуации выше, вы можете "обернуть" всё в выражение case
:
case(now >= [Start] AND now < [Срок исполнения], "В работе",
now >= [Start] AND now >= [Срок исполнения], "Требуется продление",
now = [Срок исполнения], "Истекает сейчас")
Типы данных¶
Тип данных | Возвращается now |
---|---|
Строка | ❌ |
Число | ❌ |
Дата и время | ✅ |
Логический | ❌ |
JSON | ❌ |
now
возвращает timestamp with time zone
, если часовые пояса поддерживаются вашей базой данных, в противном случае now
возвращает timestamp without time zone
.
Для дополнительной информации о том, как эти типы данных ведут себя в Glarus BI, см. Часовые пояса.
Ограничения¶
now
вообще может и не быть now (в вашем местном времени), если ваш часовой пояс не совпадает с часовым поясом отчёта Glarus BI.
Если вам необходимо сравнить now
со столбцом в другом часовом поясе, используйте convertTimezone для приведения обоих столбцов к одному часовому поясу. Например:
convertTimezone(now, 'UTC', <report timezone>) >= convertTimezone([Срок исполнения], 'UTC', <source time zone>)
Связанные функции¶
Описывают различные способы сделать то же самое.
SQL¶
Когда вы запускаете запрос с помощью конструктора запросов, Glarus BI преобразует настройки (фильтры, сводки и т.д.) в SQL-запрос и запускает этот запрос в вашей базе данных для получения результатов.
По умолчанию now
использует часовой пояс отчёта Glarus BI. Если ваш администратор не установил часовой пояс отчета, now
будет использовать часовой пояс вашей базы данных.
Допустим вы используете базу данных Postgres. Если часовой пояс отчёта Glarus BI установлен на NSK, вы получите now
в NSK:
Если же вы не установили часовой пояс отчета, вы получите now
в часовом поясе вашей базы данных Postgres (обычно UTC):
Таблицы¶
Функция электронных таблиц NOW()
получает текущую дату и время в часовом поясе вашей операционной системы (время, которое находится на вашем компьютере или мобильном устройстве).
Python¶
Вы можете использовать pd.Timestamp.now()
с помощью модуля pandas
. Это даст вам объект Timestamp
с текущей датой и временем в часовом поясе вашей операционной системы.