NumericCount — функция диаграммы
NumericCount() используется для агрегирования числовых значений в каждом измерении диаграммы.
Синтаксис:
NumericCount({[SetExpression] [DISTINCT] [TOTAL [<fld {,fld}>]]} expr)
Возвращаемые типы данных: целое
Аргументы:
Аргумент | Описание |
---|---|
expr | Выражение или поле, содержащее данные для измерения. |
set_expression | По умолчанию функция агрегирования агрегирует множество возможных записей, определенных выборкой. Альтернативный набор записей может быть определен выражением анализа множества. |
DISTINCT | Если слово DISTINCT указывается до аргументов функции, все дубликаты, возникшие в результате оценки аргументов функции, будут проигнорированы. |
TOTAL |
Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются. При использовании выражения TOTAL [<fld {.fld}>], где префикс TOTAL предшествует списку из одного или нескольких имен полей, выступающих в качестве подмножества переменных измерения диаграммы, создается подмножество всех возможных значений. |
Примеры и результаты:
Customer | Product | OrderNumber | UnitSales | Unit Price |
---|---|---|---|---|
Astrida | AA | 1 | 4 | 16 |
Astrida | AA | 7 | 10 | 15 |
Astrida | BB | 4 | 9 | 1 |
Betacab | BB | 6 | 5 | 10 |
Betacab | CC | 5 | 2 | 20 |
Betacab | DD | 25 | ||
Canutility | AA | 15 | ||
Canutility | CC | 19 | ||
Divadip | AA | 2 | 4 | 16 |
Divadip | DD | 3 | 25 |
В следующих примерах считается, что все клиенты выбраны, если не указано иначе.
Пример | Результат |
---|---|
NumericCount([OrderNumber]) |
Значение 7, поскольку 3 из 10 полей в элементе OrderNumber пустые. Примечание к информации«0» считается значением, а не пустой ячейкой. Тем не менее, если мера агрегирует значение для измерения до 0, это измерение не будет включено в диаграммы.
|
NumericCount([Product]) | Значение 0, поскольку все имена продуктов указаны в тексте. Обычно данную операцию можно использовать, чтобы убедиться, что в текстовых полях нет числового содержимого. |
NumericCount (DISTINCT [OrderNumber])/Count(DISTINCT [OrderNumber)] | Подсчитывается количество всех уникальных числовых заказов и делится по количеству числовых и не числовых заказов. Если все значения полей числовые, это значение будет равно 1. Обычно данный способ можно использовать, чтобы убедиться, что все значения в полях числовые. В этом примере имеется 7 уникальных числовых значений для элемента OrderNumber из 8 уникальных числовых и нечисловых значений, поэтому выражение возвращает 0,875. |
Данные, используемые в примере:
Temp:
LOAD * inline [
Customer|Product|OrderNumber|UnitSales|UnitPrice
Astrida|AA|1|4|16
Astrida|AA|7|10|15
Astrida|BB|4|9|9
Betacab|CC|6|5|10
Betacab|AA|5|2|20
Betacab|BB||| 25
Canutility|AA|||15
Canutility|CC| ||19
Divadip|CC|2|4|16
Divadip|DD|3|1|25
] (delimiter is '|');