GROUPBY-Makro
Die GROUPBY
Makro ist nur in Unica Campaign verfügbar.
Syntax
GROUPBY(group_field, keyword, rolled_field [,output_field])
Parameter
-
group_field
Gibt die Variable an, nach der die Einträge gruppiert werden (d. h., alle identischen Werte der angegebenen Variable werden derselben Gruppe zugeordnet).
-
keyword
Gibt die zusammenfassende Rollup-Funktion an, die auf das Rollup-Feld angewendet werden soll.
-
rolled_field
Gibt die Variable an, die zusammengefasst werden soll.
-
output_field
Gibt eine alternative Variable an, die für eine einzelne Zeile einer Gruppe zurückgegeben werden soll, und kann nur mit den Schlüsselwörtern
MinOf
,MaxOf
undMedianOf
eingesetzt werden.
Syntax
GROUPBY
Fasst mehrere Zeilen von Daten in einer Gruppe zusammen Die Ausgabe dieser Funktion ist eine einzelne Spalte. Die Ausgabe ist das Ergebnis der durch keyword
angegebenen Operation bezüglich rolled_field
in der durch group_field
angegebenen homogenen Gruppe. Wenn es mehrere Antworten gibt, die eine bestimmte Bedingung erfüllen, wird die erste gefundene Antwort zurückgegeben.
Wenn das optionale output_field
nicht angegeben ist, ist die Ausgabe das Ergebnis der auf rolled_field
angewendeten Operation. Wenn output_field
angegeben ist, ist das Ergebnis das output_field
der Zeile in der Gruppe.
Wenn mehrere Zeilen in einer Gruppe die angegebene Bedingung erfüllen (etwa wenn bezüglich des Maximalwerts ein Gleichstand vorliegt), wird das output-field
zurückgegeben, das der ersten Zeile zugeordnet ist, die die Bedingung erfüllt.
GROUPBY
als ersten Parameter verwenden.Die folgenden Schlüsselwörter werden unterstützt (die Groß-/Kleinschreibung wird nicht beachtet):
Suchbegriff | Zeichenfolge? Ja/Nein |
Syntax |
---|---|---|
CountOf |
Yes |
Gibt die Anzahl der Einträge in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein; der Rückgabewert ist unabhängig vom Wert von rolled_field derselbe). |
MinOf |
Yes |
Gibt den Minimalwert von rolled_field in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein; wenn rolled_field eine Zeichenfolge ist, wird der Wert zurückgegeben, der bei alphabetischer Sortierung dem Anfang des Alphabets am nächsten liegt). |
MaxOf |
Yes |
Gibt den Maximalwert von rolled_field in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein; wenn rolled_field eine Zeichenfolge ist, wird der Wert zurückgegeben, der bei alphabetischer Sortierung dem Ende des Alphabets am nächsten liegt). |
DiffOf |
Yes |
Gibt die Anzahl unterschiedlicher Werte von rolled_field in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein). |
AvgOf |
No |
Gibt den Durchschnittswert von rolled_field in jeder Gruppe zurück (rolled_field muss numerisch sein). |
ModeOf |
Yes |
Gibt den Modalwert (d. h. den am häufigsten vorkommenden Wert) von rolled_field in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein). |
MedianOf |
Yes |
Gibt den gemittelten Wert (d. h. den Mittelwert bei Sortierung nach rolled_field ) von rolled_field in jeder Gruppe zurück (rolled_field kann numerisch oder eine Zeichenfolge sein; wenn rolled_field eine Zeichenfolge ist, werden die Werte alphabetisch sortiert). |
OrderOf |
Yes |
Gibt die Reihenfolge von rolled_field in jeder Gruppe zurück (rolled_field muss numerisch sein). Wenn mehrere Einträge denselben Wert haben, erhalten alle denselben Wert. |
SumOf |
No |
Gibt die Summe von rolled_field in jeder Gruppe zurück (rolled_field muss numerisch sein). |
StdevOf |
No |
Gibt die Standardabweichung von rolled_field in jeder Gruppe zurück (rolled_field muss numerisch sein). |
IndexOf |
Yes |
Gibt den 1-basierten Index (nach rolled_field sortiert) jedes Datensatzes zurück (rolled_field kann numerisch oder eine Zeichenfolge sein). Die Sortierreihenfolge ist aufsteigend. Anmerkung: Bei numerischen Feldern kann die Sortierreihenfolge von RankOf und IndexOf absteigend gemacht werden, indem dem Sortierfeld ein Minuszeichen (-) vorangestellt wird. |
RankOf |
Yes |
Gibt die 1-basierte Kategorie (nach rolled_field sortiert) zurück, in der jeder Datensatz liegt (rolled_field kann numerisch oder eine Zeichenfolge sein). Die Sortierreihenfolge ist aufsteigend. Anmerkung: Bei numerischen Feldern kann die Sortierreihenfolge von RankOf und IndexOf absteigend gemacht werden, indem dem Sortierfeld ein Minuszeichen (-) vorangestellt wird. |
Beispiele
GROUPBY (Household_ID, SumOf, Account_Balance) Berechnet die Summe aller Kontostände für den jeweiligen Haushalt. |
GROUPBY (Cust_ID, MinOf, Date(Account_Open_Date), Acc_Num) Gibt die Kontonummer des ersten Kontos zurück, das vom Kunden eröffnet wurde. |