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