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

NumericCount() используется для агрегирования числовых значений в каждом измерении диаграммы.

Синтаксис:

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

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

Аргументы

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

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

| Пример | Результат |
| --- | --- |
| `NumericCount(OrderNumber)` | Возвращает количество строк в поле `OrderNumber`, которые имеют числовое значение.<br><br>Примечание к информации«0» считается значением, а не пустой ячейкой. Тем не менее, если мера агрегирует значение для измерения до 0, это измерение не будет включено в диаграммы. Пустые ячейки оцениваются как нечисловые и не учитываются функцией `NumericCount`. |
| `NumericCount(Product)` | Возвращает количество названий продуктов, которые являются числовыми значениями. Обычно данную функцию используют, чтобы убедиться, что в текстовых полях нет числового содержимого. |
| `NumericCount (DISTINCT OrderNumber)/Count(DISTINCT OrderNumber)` | Подсчитывается количество уникальных числовых номеров заказов и делится на количество всех номеров заказов, числовых и нечисловых. Если все значения полей числовые, это значение будет равно 1. |

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

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

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

Обзор

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

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

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

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

  * `Customer`

  * `Product`

  * `OrderNumber`

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

```
Example:
LOAD * inline [
Customer|Product|OrderNumber
Astrida|AA|1
Astrida|AA|7
Astrida|BB|4
Betacab|CC|6
Betacab|AA|5
Betacab|BB|
Canutility|AA|
Canutility|CC|
Divadip|CC|2
Divadip|DD|3
](delimiter is '|');
```

Результаты

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

* `OrderNumber`

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

* `=NumericCount(OrderNumber)`, чтобы вычислить количество заказов, содержащих числовые значения.

* `=NumericCount(Product)`, чтобы вернуть количество названий продуктов, которые содержат только цифры.

* `=NumericCount(DISTINCT OrderNumber)/Count(DISTINCT OrderNumber)`, чтобы вычислить общее количество номеров заказов с уникальными числовыми значениями и разделить эту сумму на общее количество номеров заказов с уникальными числовыми и нечисловыми значениями. Если все значения полей числовые, это значение будет равно `1`.

Results table

| OrderNumber | NumericCount(OrderNumber) | NumericCount(Product) | NumericCount (DISTINCT OrderNumber)/Count(DISTINCT OrderNumber) |
| --- | --- | --- | --- |
| Totals | 7 | 0 | 0.875 |
| 1 | 1 | 0 | 1 |
| 2 | 1 | 0 | 1 |
| 3 | 1 | 0 | 1 |
| 4 | 1 | 0 | 1 |
| 5 | 1 | 0 | 1 |
| 6 | 1 | 0 | 1 |
| 7 | 1 | 0 | 1 |
|  | 0 | 0 | 0 |

Результат первой меры возвращает `7`, потому что три из десяти записей в `OrderNumber` пустые, а остальные ― числовые.

Вторая мера возвращает `0`, потому что числовые значения отсутствуют; все названия продуктов являются текстовыми. Обычно этот тип меры используют, чтобы убедиться, что в текстовых полях нет числового содержимого.

Третья мера подсчитывает количество уникальных числовых номеров заказов и делит его на количество всех номеров заказов, числовых и нечисловых. Если все значения полей числовые, это значение будет равно `1`. Обычно данный способ можно использовать, чтобы убедиться, что все значения в полях числовые. В этом примере имеется `7` уникальных числовых значений для `OrderNumber` из `8` уникальных числовых и нечисловых значений, поэтому выражение возвращает `0.875`.

## Пример. Сценарий использования функции NumericCount

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

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

Обзор

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

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

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

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

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

  * `Store`

  * `StoreProduct`

  * `Sales`

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

```
Example:
LOAD * inline [
Store, StoreProduct, Sales
A, Widget A, 1200
B, Widget A, No data
C, Widget A, 1300
A, Widget B, 800
B, Widget B,
C, Widget B, "Error"
A, Widget C, 500
B, Widget C, 600
C, Widget C, 700
];
```

Результаты

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

* `Store`

Добавьте это поле в качестве измерения столбца:

* `StoreProduct`

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

* `=NumericCount(Sales)`, чтобы вычислить продажи в магазинах с числовыми данными.

Results table

| Store | StoreProduct |  |  |
| --- | --- | --- | --- |
| Widget A | Widget B | Widget C |  |
| A | 1 | 1 | 1 |
| B | 0 | 0 | 1 |
| C | 1 | 0 | 1 |

Результаты показывают наличие `3` записей, где количество равно `0`. Это записи о продажах, которые необходимо расследовать, поскольку они содержат нечисловые значения.