Min
Min() Funkcja zwraca najniższą wartość liczbową z agregowanych danych. Podanie argumentu rank n pozwala na znalezienie n-tej najniższej wartości.
Składnia:
Min([{SetExpression}] [TOTAL [<fld {,fld}>]] expr [,rank])
Typ zwracanych danych: liczbowy
Argumenty:
- expr: Wyrażenie lub pole zawierające mierzone dane.
- rank: Wartość 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.
- 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.
- 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.
Przykłady:
Przykład | Wynik |
---|---|
Min(UnitSales) |
2, ponieważ jest to najniższa wartość niebędąca wartością NULL w kolumnie UnitSales. |
Wartość zamówienia jest obliczana na podstawie liczby sprzedanych jednostek podanej w kolumnie (UnitSales) pomnożonej przez cenę jednostkową. Min(UnitSales*UnitPrice) |
40, ponieważ jest to najniższa wartość niebędąca wartością NULL wynikająca z obliczeń dotyczących wszystkich pozostałych danych w ramach formuły: UnitSales*UnitPrice. |
Min(UnitSales, 2) |
4, czyli druga najniższa wartość (po wartościachNULL). |
Min(TOTAL UnitSales) |
2, ponieważ kwalifikator TOTAL informuje o tym, że znaleziono najniższą możliwą wartość bez uwzględnienia wymiarów wykresu. W przypadku wykresu z wymiarem Customer kwalifikator TOTAL zapewnia, że zwracana jest minimalna wartość z całego zestawu danych, a nie minimalna wartość z kolumny UnitSales dla każdego klienta. |
Wybierz Customer B. Min({1} TOTAL UnitSales) |
2, niezależnie od dokonanego wyboru, ponieważ wyrażenie Set Analysis {1} określa zestaw rekordów, które zostaną ocenione w kategorii ALL, bez względu na dokonany wybór. |
Dane zastosowane 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 '|');
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 |