# Min — функция диаграммы

Min() находит наименьшее значение агрегированных данных. Если указать rank n, можно найти наименьшее n-ное значение.

Примечание к подсказкеДавайте также посмотрим на элементы FirstSortedValue и RangeMin, которые имеют одинаковую функциональность в отношении функции Min.

Синтаксис:

Min({[SetExpression] [TOTAL [&lt;fld {,fld}&gt;]]} expr [,rank])

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

Аргументы

| Аргумент | Описание |
| --- | --- |
| expr | Выражение или поле, содержащее данные для измерения. |
| rank | Значение rank по умолчанию равно 1, что соответствует наименьшему значению. При указании для rank значения 2 будет возвращено второе наименьшее значение. Если rank имеет значение 3, будет возвращено третье наименьшее значение и т. д. |
| SetExpression | По умолчанию функция агрегирования агрегирует множество возможных записей, определенных выборкой. Альтернативный набор записей может быть определен выражением анализа множества. |
| TOTAL | Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются. При использовании выражения TOTAL [&lt;fld {.fld}&gt;], где префикс TOTAL предшествует списку из одного или нескольких имен полей, выступающих в качестве подмножества переменных измерения диаграммы, создается подмножество всех возможных значений.<br><br>[Определение объема агрегирования](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Пример: выражения диаграммы

| Пример | Результат |
| --- | --- |
| `Min(UnitSales)` | Возвращает самое низкое ненулевое значение в поле `UnitSales`. |
| `Min(UnitSales*UnitPrice)` Значение суммы заказа вычисляется путем умножения количества проданных единиц в элементе (`UnitSales`) на цену за единицу. | Возвращает наименьшее значение, полученное в результате вычисления всех возможных значений произведения (`UnitSales`)\*(`UnitPrice`). |
| `Min(UnitSales, 2)` | Возвращает второе наименьшее значение в `UnitSales` (после значений NULL). |
| `Min(TOTAL UnitSales)` | Квалификатор `TOTAL` означает, что обнаружено наименьшее возможное значение без учета измерений диаграммы. Для диаграммы с измерением `Customer` квалификатор `TOTAL` обеспечит возврат минимального значения по всему набору данных вместо минимального значения `UnitSales` для каждого клиента. |
| `Min({1} TOTAL UnitSales)` | Выражение анализа множеств `{1}` определяет набор записей для оценки в качестве `ALL`, независимо от выборки. Например, если выбран конкретный клиент, все равно будет возвращено минимальное значение `UnitSales` по всему набору данных. |

## Пример. Основы использования функции Min

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/min.htm)

#### Выражение диаграммы

Обзор

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

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

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

* Следующие поля в таблице данных:

  * `Customer`

  * `UnitSales`

  * `UnitPrice`

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

```
Example:
LOAD * inline [
Customer|UnitSales|UnitPrice
Astrida|4|16
Astrida|10|15
Astrida|9|9
Betacab|5|10
Betacab|2|20
Betacab||25
Canutility|8|15
Canutility||19
] (delimiter is '|');
```

Результаты

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

* `Customer`

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

* `=Min(UnitSales)`, чтобы вычислить минимальное значение `UnitSales`.

* `=Min(UnitSales*UnitPrice)`, чтобы вычислить минимальное значение после умножения `UnitSales` на `UnitPrice` в каждой строке.

* `=Min(UnitSales, 2)`, чтобы вычислить второе наименьшее значение.

* `=Min(TOTAL UnitSales)`, чтобы вычислить наименьший итог независимо от измерения диаграммы.

* `=Min({1} TOTAL UnitSales)`, чтобы вычислить наименьший итог независимо от всех выборок.

Results table

| Customer | Min(UnitSales) | Min(UnitSales\*UnitPrice) | Min(UnitSales, 2) | Min(TOTAL UnitSales) | Min({1} TOTAL UnitSales) |
| --- | --- | --- | --- | --- | --- |
| Totals | 2 | 40 | 4 | 2 | 2 |
| Astrida | 4 | 64 | 9 | 2 | 2 |
| Betacab | 2 | 40 | 5 | 2 | 2 |
| Canutility | 8 | 120 | - | 2 | 2 |

В этом примере обратите внимание на следующие данные:

* В первой мере (`Min(UnitSales)`) наименьшее значение `UnitSales` для клиента `Astrida` составляет `4`. Ячейка `Totals` в этом столбце возвращает значение `2`, потому что оно также является самым низким значением `UnitSales` во всем наборе данных.

* Во второй мере (`Min(UnitSales*UnitPrice)`) `64` возвращается для `Astrida`. Это наименьшее значение для данного клиента при умножении `UnitSales` на `UnitPrice`. Ячейка `Totals` в этом столбце тоже возвращает значение `40`, потому что оно также является самым низким вычисленным значением во всем наборе данных.

* В третьей мере (`Min(UnitSales, 2)`) второе наименьшее значение `UnitSales` для клиента `Astrida` составляет `9`. Значение `4` возвращается в строке `Totals`, потому что это второе наименьшее значение `UnitSales` среди всех клиентов.

* Четвертая мера (`Min(TOTAL UnitSales)`) возвращает значение `2`. Это наименьшее ненулевое значение, найденное независимо от измерения customer (клиент), поэтому все строки возвращают одно и то же значение. Однако если выбрать клиента `Betacab`, таблица вернет только значения для этого клиента, в данном случае `2`, потому что это наименьшее значение `UnitSales` среди всех продуктов для `Betacab`.

* Пятая мера `Min({1} TOTAL UnitSales)` возвращает `2` независимо от значения, выбранного в поле `Customer`, поскольку она вычисляет наименьшее итоговое значение. Например, если выбрать `Betacab`, этот столбец будет по-прежнему возвращать значение `2`.

## Пример. Сценарий использования функции Min для вычисления наименьшей суммы продаж по месяцам

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/min.htm)

#### Выражение диаграммы

Обзор

Набор данных содержит показатели продаж товаров по месяцам. Менеджеру по продажам требуется определить минимальную сумму продаж для каждого продукта и месяц, когда она зарегистрирована.

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

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

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

* Следующие поля в таблице данных:

  * `Product`

  * `Sales`

  * `Month`

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

```
Example:
Load * inline [
Product,Sales,Month
A, 500, 2024-01-01
A, 700, 2024-02-01
A, 600, 2024-03-01
B, 300, 2024-01-01
B, 800, 2024-02-01
B, 450, 2024-03-01
C, 550, 2024-01-01
C, 620, 2024-02-01
C, 710, 2024-03-01
];
```

Результаты

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

* `Product`

* `Month`

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

* `=If(Sales = Min(TOTAL <Product> Sales), Sales)`, чтобы вычислить минимальный объем продаж для каждого продукта. На панели свойств выберите Дополнения &gt; Обработка данных. Снимите флажок Включить нулевые значения.

Results table

| Product | Month | If(Sales = Min(TOTAL &lt;Product&gt; Sales), Sales) |
| --- | --- | --- |
| A | 2024-01-01 | 500 |
| B | 2024-01-01 | 300 |
| C | 2024-01-01 | 550 |

Результаты меры возвращают минимальную сумму продаж для каждого продукта и месяц, в котором это значение было достигнуто. Например, для ` Product B  ` были самые низкие продажи (`300`) в `2024-01-01`.

## Подробнее

* [FirstSortedValue — функция диаграммы](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/firstsortedvalue.htm)
* [RangeMin Функция скрипта и диаграммы](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RangeFunctions/rangemin.htm)
* [Анализ множеств](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Определение объема агрегирования](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm)