NumericCount

Funkcja NumericCount() agreguje liczbę wartości liczbowych w poszczególnych wymiarach wykresu.

Syntax:  

NumericCount([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] expr)

Return data type: liczba całkowita

Arguments:  

Argument Opis
expr Wyrażenie lub pole zawierające mierzone dane.
SetExpression Funkcja agregacji będzie domyślnie dokonywać agregacji na zbiorze możliwych rekordów zdefiniowanym przez daną selekcję. Alternatywny zestaw wierszy można zdefiniować za pomocą wyrażenia analizy zestawów.
DISTINCT Jeśli przed argumentami funkcji występuje słowo DISTINCT, wówczas duplikaty wynikające z wyników obliczenia argumentów funkcji są pomijane.
TOTAL

Jeśli słowo TOTAL występuje przed argumentami funkcji, wówczas obliczenie jest wykonywane względem wszystkich możliwych wartości z uwzględnieniem bieżących selekcji, nie tylko tych należących do bieżącej wartości wymiaru, to znaczy z pominięciem wymiarów wykresu.

Po kwalifikatorze TOTAL może następować lista zawierająca co najmniej jedną nazwę pola w nawiasach trójkątnych <fld>. Te nazwy pól powinny być podzbiorem zmiennych wymiaru wykresu.

Określenie zakresu agregacji

Examples and results:  

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

O ile nie podano inaczej, w poniższych przykładach założono, że selekcja obejmuje wszystkich klientów.

Przykład Wynik
NumericCount([OrderNumber])

7, ponieważ trzy pola z dziesięciu pól w kolumnie OrderNumber są puste.

Uwaga: „0” liczy się jako wartość, a nie jako pusta komórka. Jeśli jednak agregacja miary dla pewnego wymiaru da wynik 0, wymiar ten nie będzie uwzględniany na wykresach.
NumericCount([Product]) 0, ponieważ wszystkie nazwy produktów mają postać tekstową. Za pomocą tej funkcji zazwyczaj sprawdza się, czy pola tekstowe nie zawierają wartości liczbowych.
NumericCount (DISTINCT [OrderNumber])/Count(DISTINCT [OrderNumber]) Zlicza liczbę wszystkich różniących się od siebie wartości liczbowych w kolumnie OrderNumber i dzieli tę liczbę przez liczbę wartości liczbowych i nieliczbowych w kolumnie OrderNumber. Jeśli wszystkie wartości w polach mają charakter liczbowy, zwracana jest wartość 1. Za pomocą tej funkcji zazwyczaj sprawdza się, czy wszystkie wartości w polach mają charakter liczbowy. W tym przykładzie w kolumnie OrderNumber występuje siedem różniących się od siebie wartości liczbowych z ośmiu różniących się od siebie wartości liczbowych i nieliczbowych. W takim przypadku wyrażenie to zwraca wartość 0,875.

Dane zastosowane w przykładzie:

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 '|');