Aggr
Funkcja
Syntax:
Aggr({SetExpression}[DISTINCT] [NODISTINCT ] expr, StructuredParameter{, StructuredParameter})
Return data type: podwójny
Arguments:
Argument | Opis |
---|---|
|
Wyrażenie zawierające funkcję agregacji. Funkcja agregacji będzie domyślnie dokonywać agregacji na zbiorze możliwych rekordów zdefiniowanym przez daną selekcję. |
|
Argument Wymiar ten musi zajmować jedno pole i nie może być wyrażeniem. Wymiar służy do ustalania szeregu wartości, dla których wyliczane jest wyrażenie Jeśli uwzględnione są kryteria sortowania, wówczas szereg wartości utworzony przez funkcję Szczegółowe informacje na temat sposobu używania kryteriów sortowania zawiera temat Dodawanie kryteriów sortowania do wymiaru w parametrze ustrukturyzowanym. |
|
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. |
|
Jeśli argument wyrażenia jest poprzedzony kwalifikatorem distinct lub w ogóle nie ma kwalifikatora, dla każdej odrębnej kombinacji wartości wymiarów będzie generowana tylko jedna wartość zwracana. W ten sposób są standardowo dokonywane agregacje. Każda odrębna kombinacja wartości wymiarów będzie generować jeden wiersz na wykresie. |
NODISTINCT |
Jeśli argument wyrażenia jest poprzedzony kwalifikatorem nodistinct, każda kombinacja wartości wymiarów może generować więcej niż jedną wartość zwracaną (w zależności od bazowej struktury danych). Jeśli występuje tylko jeden wymiar, funkcja aggr zwróci szereg z tą samą liczbą elementów co liczba wierszy w źródle danych. |
Podstawowe funkcje agregacji, takie jak
Limitations:
Każdy wymiar w funkcji
Dodawanie kryteriów sortowania do wymiaru w parametrze ustrukturyzowanym
W formie podstawowej argument
W argumencie
Argument
(FieldName, (Sort-type, Ordering))
Parametry ustrukturyzowane mogą być zagnieżdżane:
(FieldName, (FieldName2, (Sort-type, Ordering)))
Typy sortowania mogą być następujące:
Typy kolejności powiązane z poszczególnymi typami sortowania są następujące:
Typ sortowania | Dozwolone typy kolejności |
---|---|
|
|
|
|
|
|
|
|
Typy kolejności
W przypadku typu sortowania
W przypadku typu sortowania
Examples and results:
Przykład | Wynik |
---|---|
|
Wyrażenie W ten sposób zbudowaliśmy tymczasową listę wartości bez konieczności tworzenia jawnej tabeli ani kolumny zawierającej te wartości. Wartości te są stosowane jako dane wejściowe dla funkcji |
|
Tablica wartości: 16, 16, 16, 25, 25, 25, 19 i 19. Kwalifikator nodistinct oznacza, że szereg zawiera po jednym elemencie dla każdego wiersza w danych źródłowych: każdy jest maksymalną ceną UnitPrice dla każdego klienta (Customer ) i produktu (Product). |
|
Używanie kryteriów sortowania w argumencie StructuredParameter w wyrażeniu: max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear,(NUMERIC, ASCENDING)))) Bez kryteriów sortowania wynik wyrażenia max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear))) jest zależny od sposobu sortowania wymiaru Dodanie do wymiaru wartości określających typ sortowania i typ kolejności powoduje dodanie kryteriów sortowania do parametru ustrukturyzowanego: (MonthYear, (NUMERIC, ASCENDING)), gdzie typ sortowania W tym przypadku szukamy największego wzrostu liczby klientów z miesiąca na miesiąc. Można to wykorzystać na przykład w wizualizacji wskaźnika KPI. Część Z wymiarem: |
Dane zastosowane w przykładach:
Utwórz tabelę z wymiarami
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|25
Canutility|AA|8|15
Canutility|CC||19
] (delimiter is '|');