Sum - Diagrammfunktion
Sum() berechnet die Gesamtsumme der von der Formel vorgegebenen Werte oder Felder über die aggregierten Daten.
Syntax:
Sum([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] expr)
Rückgabe Datentyp: numerisch
Argumente:
- expr: Die Formel oder das Feld mit den Daten, die gemessen werden sollen.
- SetExpression: Standardmäßig berechnet sich die Aggregierungsfunktion über alle wählbaren Werte. Alternativ können Sie die der Berechnung zugrunde liegenden Werte über die Auswahlformel bestimmen.
-
DISTINCT: Der Zusatz DISTINCT vor den Funktionsargumenten bewirkt, dass bei der Auswertung der Funktion entstehende Dubletten nicht berücksichtigt werden. InformationshinweisObwohl der Zusatz DISTINCT unterstützt wird, sollte er nur mit äußerster Vorsicht eingesetzt werden. Denn dies kann für den Benutzer irreführend sein und dieser denkt möglicherweise, dass ein Gesamtwert angezeigt wird, obwohl bestimmte Daten ausgelassen wurden.
- TOTAL: Der Zusatz TOTAL vor der Funktion bewirkt, dass die Berechnung über alle ausgewählten bzw. wählbaren Werte erfolgt, und nicht nur über diejenigen, die zu dem Wert der aktuellen Dimension zählen, die Dimensionen des Diagramms werden also nicht berücksichtigt. Auf den Zusatz TOTAL kann eine Reihe von Feldnamen in spitzen Klammern folgen <fld>. Sind dies Dimensionen des Diagramms, werden bei der Berechnung
Beispiele:
Beispiel | Ergebnis |
---|---|
Sum(UnitSales) |
38. Die Summe der Werte in UnitSales. |
Sum(UnitSales*UnitPrice) |
505. Die Summe von UnitPrice multipliziert mit UnitSales aggregiert. |
Sum(TOTAL UnitSales*UnitPrice) |
505 für alle Zeilen in der Tabelle sowie der Gesamtsumme, weil der Zusatz TOTAL bedeutet, dass die Summe immer noch 505 beträgt und die Diagrammdimensionen nicht berücksichtigt werden. |
Nehmen Sie die Auswahl Customer B vor. Sum({1} TOTAL UnitSales*UnitPrice) |
505, unabhängig von der getroffenen Auswahl, da die Set Analysis-Formel {1} die zu berechnenden Datensätze unabhängig von der getroffenen Auswahl als ALL bewertet. |
In Beispielen verwendete Daten:
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 |