QlikWorld 2020 Global Conference. Weź udział i dowiedz się, jak w pełni wykorzystać dane. Nie zwlekaj. Zarejestruj się już teraz, by zaoszczędzić.

Max - funkcja wykresu

Funkcja Max() zwraca najwyższą wartość z agregowanych danych. Podanie argumentu rank n pozwala na znalezienie n-tej najwyższej wartości.
Porada: Warto zapoznać się z informacjami na temat funkcji FirstSortedValue i rangemax, których działanie jest podobne do działania funkcji Max.

Składnia:  

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

Typ zwracanych danych: liczbowy

Argumenty:  

ArgumentOpis
exprWyrażenie lub pole zawierające mierzone dane.
rankWartość domyślna argumentu rank wynosi 1, co odpowiada najwyższej wartości. Dla argumentu rank równego 2 zostanie zwrócona druga wartość po wartości najwyższej. Dla argumentu rank równego 3 zostanie zwrócona trzecia wartość po wartości najwyższej itd.
SetExpressionFunkcja 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.
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.

Zob.: Określenie zakresu agregacji

Przykłady i wyniki:  

CustomerProductUnitSalesUnitPrice
AstridaAA416
AstridaAA1015
AstridaBB99
BetacabBB510
BetacabCC220
BetacabDD-25
CanutilityAA815
CanutilityCC-19
PrzykładyWyniki

Max(UnitSales)

10, ponieważ jest to najwyższa wartość w kolumnie UnitSales.

Wartość zamówienia jest obliczana na podstawie liczby sprzedanych jednostek podanej w kolumnie UnitSales pomnożonej przez cenę jednostkową.

Max(UnitSales*UnitPrice)

150, ponieważ jest to najwyższa wartość wynikająca z obliczeń dotyczących wszystkich pozostałych danych w ramach formuły: UnitSales*UnitPrice.

Max(UnitSales, 2)

9, czyli druga najwyższa wartość.

Max(TOTAL UnitSales)

10, ponieważ kwalifikator TOTAL informuje o tym, że znaleziono najwyższą możliwą wartość bez uwzględnienia wymiarów wykresu. W przypadku wykresu z wymiarem Customer kwalifikator TOTAL zapewnia, że zwracana jest maksymalna wartość z całego zestawu danych, a nie maksymalna wartość z kolumny UnitSales dla każdego klienta.

Wybierz Customer B.

Max({1} TOTAL UnitSales)

10, niezależnie od dokonanej selekcji, ponieważ wyrażenie Set Analysis {1} określa zestaw rekordów, które zostaną ocenione w kategorii ALL, bez względu na dokonaną selekcję.

Dane używane w przykładach:

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

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');