# minute — функция скриптa и диаграммы

Эта функция возвращает время в минутах в виде целого числа, а дробное выражение expression интерпретируется как время согласно стандартной интерпретации чисел.

Синтаксис:

minute(expression)

Возвращаемые типы данных: целое

## Когда это следует использовать

Функция `minute()` полезна, когда требуется сравнить агрегирования по минутам. Например, эту функцию можно использовать, если требуется просмотреть распределения количества действий по минутам.

Эти измерения можно создать в скрипте загрузки с помощью функции создания поля в таблице основного календаря. Их также можно использовать непосредственно в диаграмме в качестве вычисляемых измерений.

Примеры функции

| Пример | Результат |
| --- | --- |
| `minute (<br>'09:14:36' )` | Возвращает 14. |
| `minute (<br>'0.5555' )` | Возвращает 19 (так как 0,5555 = 13:19:55) |

## Региональные настройки

Если не указано иное, в примерах, приведенных в данном разделе, используется следующий формат даты: ММ/ДД/ГГГГ. Формат даты указан в операторе `SET DateFormat` скрипта загрузки данных. В вашей системе может быть установлен другой формат даты по умолчанию в зависимости от региональных настроек и других факторов. Можно изменить формат в примерах в соответствии с потребностями. Или можно изменить форматы в скрипте загрузки в соответствии с этими примерами.

Региональные настройки по умолчанию в приложениях основаны на системных региональных настройках компьютера или сервера, где установлено ПО Qlik Sense. Если на сервере Qlik Sense, к которому обращается пользователь, выбран шведский язык, то редактор загрузки данных будет использовать шведские региональные настройки для даты, времени и валюты. Эти параметры регионального формата не связаны с языком, отображаемым в интерфейсе пользователя Qlik Sense. Qlik Sense будет отображаться на языке, который используется в браузере.

## Пример 1. Переменная (скрипт)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### Скрипт загрузки и результаты

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.

Скрипт загрузки содержит следующее:

* Набор данных, содержащий транзакции по метке времени, который загружается в таблицу под именем `Transactions`.

* Используется системная переменная `TimeStamp` со значением по умолчанию `M/D/YYYY h:mm:ss[.fff] TT`.

* Создание поля `minute` для вычисления, когда совершены транзакции.

Скрипт загрузки

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
    Load
        *,
        minute(timestamp) as minute
        ;
Load
*
Inline 
[
id,timestamp,amount
9497,'2022-01-05 19:04:57',47.25,
9498,'2022-01-03 14:21:53',51.75,
9499,'2022-01-03 05:40:49',73.53,
9500,'2022-01-04 18:49:38',15.35,
9501,'2022-01-01 22:10:22',31.43,
9502,'2022-01-05 19:34:46',13.24,
9503,'2022-01-04 22:58:34',74.34,
9504,'2022-01-06 11:29:38',50.00,
9505,'2022-01-02 08:35:54',36.34,
9506,'2022-01-06 08:49:09',74.23
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:

* `timestamp`

* `minute`

Результирующая таблица

| timestamp | minute |
| --- | --- |
| 2022-01-01 22:10:22 | 10 |
| 2022-01-02 08:35:54 | 35 |
| 2022-01-03 05:40:49 | 40 |
| 2022-01-03 14:21:53 | 21 |
| 2022-01-04 18:49:38 | 49 |
| 2022-01-04 22:58:34 | 58 |
| 2022-01-05 19:04:57 | 4 |
| 2022-01-05 19:34:46 | 34 |
| 2022-01-06 08:49:09 | 49 |
| 2022-01-06 11:29:38 | 29 |

Значение в поле `minute` создаются с использованием функции `minute()` и путем передачи `timestamp` в качестве выражения в предшествующем операторе load.

## Пример 2. Объект диаграммы (диаграмма)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### Скрипт загрузки и выражение диаграммы

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.

Скрипт загрузки содержит следующее:

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

* Используется системная переменная `TimeStamp` со значением по умолчанию `M/D/YYYY h:mm:ss[.fff] TT`.

Однако в этом примере в приложение загружается неизмененный набор данных. Значения `minute` рассчитывается с использованием меры в объекте диаграммы.

Скрипт загрузки

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
Load
*
Inline 
[
id,timestamp,amount
9497,'2022-01-05 19:04:57',47.25,
9498,'2022-01-03 14:21:53',51.75,
9499,'2022-01-03 05:40:49',73.53,
9500,'2022-01-04 18:49:38',15.35,
9501,'2022-01-01 22:10:22',31.43,
9502,'2022-01-05 19:34:46',13.24,
9503,'2022-01-04 22:58:34',74.34,
9504,'2022-01-06 11:29:38',50.00,
9505,'2022-01-02 08:35:54',36.34,
9506,'2022-01-06 08:49:09',74.23
];
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте это поле как измерение: `timestamp`.

Создайте следующую меру:

`=minute(timestamp)`

Результирующая таблица

| timestamp | minute |
| --- | --- |
| 2022-01-01 22:10:22 | 10 |
| 2022-01-02 08:35:54 | 35 |
| 2022-01-03 05:40:49 | 40 |
| 2022-01-03 14:21:53 | 21 |
| 2022-01-04 18:49:38 | 49 |
| 2022-01-04 22:58:34 | 58 |
| 2022-01-05 19:04:57 | 4 |
| 2022-01-05 19:34:46 | 34 |
| 2022-01-06 08:49:09 | 49 |
| 2022-01-06 11:29:38 | 29 |

Значения для `minute` создаются с использованием функции `minute()`, где `timestamp` передается в виде выражения в мере для объекта диаграммы.

## Пример 3. Сценарий

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/minute.htm)

#### Скрипт загрузки и выражение диаграммы

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки на новую вкладку.

Скрипт загрузки содержит следующее:

* Набор данных с метками времени, который создается для представления записей проходов через турникет.

* Информация, содержащая каждый `timestamp` с соответствующим `id`, которая загружается в таблицу под именем `Ticket_Barrier_Tracker`.

* Используется системная переменная `TimeStamp` со значением по умолчанию `M/D/YYYY h:mm:ss[.fff] TT`.

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

Скрипт загрузки

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

tmpTimeStampCreator:
	load 
		*
    where year(date)=2022;
load
	date(recno()+makedate(2021,12,31)) as date
AutoGenerate 1;

join load
	maketime(floor(rand()*24),floor(rand()*59),floor(rand()*59)) as time
autogenerate 10000;

Ticket_Barrier_Tracker:
load
	recno() as id,
	timestamp(date + time) as timestamp
resident tmpTimeStampCreator;

drop table tmpTimeStampCreator;
```

Результаты

Выполните следующие действия.

1. Загрузите данные и откройте лист. Создайте новую таблицу.

2. Создайте вычисляемое измерение, используя следующее выражение:

   `=minute(timestamp)`

3. Добавьте следующую меру агрегирования для вычисления общего количества проходов:

   `=count(id)`

4. Задайте параметру меры Формат чисел значение Денежный.

Результирующая таблица

| minute(timestamp) | =count(id) |
| --- | --- |
| 0 | 174 |
| 1 | 171 |
| 2 | 175 |
| 3 | 165 |
| 4 | 188 |
| 5 | 176 |
| 6 | 158 |
| 7 | 187 |
| 8 | 178 |
| 9 | 178 |
| 10 | 197 |
| 11 | 161 |
| 12 | 166 |
| 13 | 184 |
| 14 | 159 |
| 15 | 161 |
| 16 | 152 |
| 17 | 160 |
| 18 | 176 |
| 19 | 164 |
| 20 | 170 |
| 21 | 170 |
| 22 | 142 |
| 23 | 145 |
| 24 | 155 |
| + 35 строк |  |