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

Only() возвращает значение, если есть только один возможный результат, который может быть получен из агрегированных данных. Например, при поиске одного продукта, где стоимость единицы = 9, будет возвращено значение NULL, если стоимость единицы 9 есть у нескольких продуктов.

Синтаксис:

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

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

Аргументы:

Аргументы

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

Примечание к подсказкеИспользуйте функцию Only(), если необходимо получить значение NULL в случае нескольких возможных значений в данных образца.

Примеры и результаты:

Данные

| Customer | Product | UnitSales | UnitPrice |
| --- | --- | --- | --- |
| Astrida | AA | 4 | 16 |
| Astrida | AA | 10 | 15 |
| Astrida | BB | 9 | 9 |
| Betacab | BB | 5 | 10 |
| Betacab | CC | 2 | 20 |
| Betacab | DD | - | 25 |
| Canutility | AA | 8 | 15 |
| Canutility | CC | - | 19 |

Примеры и результаты

| Примеры | Результаты |
| --- | --- |
| `<br>Only({<UnitPrice={9}>} Product)` | Значение BB, поскольку это единственный элемент `Product`, у которого элемент `UnitPrice` равен 9. |
| `Only({<Product={DD}>} Customer)` | Значение Betacab, поскольку единственный элемент `Customer`, продающий `Product`, называется «DD». |
| `Only({<UnitPrice={20}>} UnitSales)` | Число элементов `UnitSales`, где элемент `UnitPrice`, равный 20, составляет 2, поскольку есть только одно значение элемента `UnitSales`, где `UnitPrice` = 20. |
| `Only({<UnitPrice={15}>} UnitSales)` | Значение NULL, поскольку существуют два значения элемента `UnitSales`, где `UnitPrice` = 15. |

Данные, используемые в примерах:

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

## Подробнее

* [Анализ множеств](https://help.qlik.com/ru-RU/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Определение объема агрегирования](https://help.qlik.com/ru-RU/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm)