Bearbeiten von Ausdrücken edit-expressions

Auf dieser Seite: Erfahren Sie, wie Sie mithilfe des Ausdruckseditors manuell Regeln mit Datenbankfeldern, Variablen und Hilfsfunktionen zum Bearbeiten von Datumsangaben, Zeichenfolgen und numerischen Werten in Ihren orchestrierten Kampagnen erstellen.

NOTE
Im folgenden Abschnitt finden Sie Informationen zum Erstellen von Regeln mit dem Ausdruckseditor. Beachten Sie, dass sich die zum Erstellen von Regeln verwendete Syntax von der für die Personalisierung verwendeten unterscheidet.

Arbeiten mit dem Ausdruckseditor edit

Die Bearbeitung von Ausdrücken erfolgt durch die manuelle Eingabe von Bedingungen, die in ihrer Gesamtheit eine Regel bilden. Dieser Modus bietet erweiterte Funktionen, mit denen Sie die Werte zur Durchführung bestimmter Abfragen ändern können, z. B. Bearbeitung von Daten, Strings, numerischen Feldern und Sortierungen.

Der Ausdruckseditor steht bei der Konfiguration einer benutzerdefinierten Bedingung im Regel-Builder unter Ausdruck bearbeiten für die Felder Attribut und Wert zur Verfügung.

Zugriff über das Feld Attribut
Zugriff über das Feld Wert
Ausdruckseditor für Attributfeld {align="center" width="200" modal="regular"}
Ausdruckseditor für Wertefeld {align="center" width="200" modal="regular"}

Der Ausdruckseditor bietet Folgendes:

  • ein Eingabefeld (1), in dem der Ausdruck definiert wird,

  • eine Liste der verfügbaren Felder (2), die im Ausdruck verwendet werden können und die der Zielgruppendimension der Abfrage entsprechen,

  • Eine Liste der verfügbaren Variablen (3), die im Ausdruck verwendet werden können. Dieses Menü ist für das Feld Wert verfügbar. Erfahren Sie, wie Sie Variablen in orchestrierten Kampagnen verwenden

  • Hilfsfunktionen (4), sortiert nach Kategorie.

Bearbeiten Sie den Ausdruck, indem Sie ihn direkt in das Eingabefeld eingeben. Um ein Feld, eine Variable oder eine Hilfsfunktion hinzuzufügen, platzieren Sie den Cursor im Ausdruck an der gewünschten Stelle und klicken Sie auf die Schaltfläche „+“.

Benutzeroberfläche des Ausdruckseditors {modal="regular"}

Hilfsfunktionen

Der Abfrageeditor bietet fortgeschrittene Funktionen zur Erstellung komplexer Filter, je nach den gewünschten Ergebnissen und der Art der bearbeiteten Daten. Folgende Funktionen stehen zur Verfügung:

Aggregat

Aggregatfunktionen führen Berechnungen für eine Reihe von Werten durch.

Name
Beschreibung
Syntax
Avg
Gibt den Durchschnittswert einer Spalte vom Typ Zahl aus
Avg(<Wert>)
Anzahl
Zählt die Werte ungleich null einer Spalte
Count(<Wert>)
CountAll
Zählt die ausgegebenen Werte (alle Felder)
CountAll()
Countdistinct
Zählt die unterschiedlichen Werte ungleich null einer Spalte
Countdistinct(<Wert>)
Max
Gibt den Höchstwert einer Spalte vom Typ Zahl, String oder Datum aus
Max(<Wert>)
Min
Gibt den Mindestwert einer Spalte vom Typ Zahl, String oder Datum aus
Min(<Wert>)
StdDev
Gibt die Standardabweichung einer Spalte vom Typ Zahl, String oder Datum aus
StdDev(<Wert>)
StringAgg
Gibt die Konkatenation der Werte einer Spalte vom String-Typ zurück, getrennt durch das Zeichen im zweiten Argument.
StringAgg(<Wert>, <String>)
Summe
Gibt die Summe der Werte einer Spalte vom Typ Zahl, String oder Datum aus
Sum(<Wert>)

Datum

Datumsfunktionen dienen zur Bearbeitung von Datums- oder Zeitwerten.

Name
Beschreibung
Syntax
AddDays
Fügt dem Datum eine Anzahl an Tagen hinzu
AddDays(<Datum>, <Anzahl>)
AddHours
Fügt dem Datum eine Anzahl an Stunden hinzu
AddHours(<Datum>, <Anzahl>)
AddMinutes
Fügt dem Datum eine Anzahl an Minuten hinzu
AddMinutes(<Datum>, <Anzahl>)
AddMonths
Fügt dem Datum eine Anzahl an Monaten hinzu
AddMonths(<Datum>, <Anzahl>)
AddSeconds
Fügt dem Datum eine Anzahl an Sekunden hinzu
AddSeconds(<Datum>, <Anzahl>)
AddYears
Fügt dem Datum eine Anzahl an Jahren hinzu
AddYears(<Datum>, <Anzahl>)
ConvertNTZ
Konvertiert NTZ-Zeitstempel (Zeitstempel ohne Zeitzone) in TZ (Zeitstempel mit Zeitzone) unter Anwendung der definierten Sitzungszeitzone
ConvertNTZ(<Datum + Uhrzeit>)
DateCmp
Vergleicht zwei Datumsangaben
DateCmp(<Datum>, <Datum>)
DateOnly
Gibt nur das Datum zurück (mit der Uhrzeit 00:00 Uhr)
DateOnly(<Datum>)
Day
Gibt die Zahl zurück, die dem Tag des Datums entspricht
Day(<Datum>)
DayOfYear
Gibt die Zahl des Tages im Jahr des angegebenen Datums aus
DayOfYear(<Datum>)
DaysAgo
Gibt das Datum aus, das dem aktuellen Datum abzüglich n Tage entspricht
DaysAgo(<Zahl>)
DaysAgoInt
Gibt das Datum (Integer JJJJMMTT) aus, das dem aktuellen Datum abzüglich n Tagen entspricht
DaysAgoInt(<Zahl>)
DaysDiff
Gibt die Anzahl von Tagen zwischen zwei Daten aus
DaysDiff(<Enddatum>, <Startdatum>)
DaysOld
Gibt das Alter eines Datums in Tagen zurück
DaysOld(<Datum>)
GetDate
Gibt das aktuelle Systemdatum des Servers zurück
GetDate()
Hour
Gibt die Stunde der im Datum angegebenen Uhrzeit zurück
Hour(<Datum>)
HoursDiff
Gibt die Anzahl von Stunden zwischen zwei Daten zurück
HoursDiff(<Enddatum>, <Startdatum>)
Minute
Gibt die Minuten der im Datum angegebenen Uhrzeit zurück
Minute(<Datum>)
MinutesDiff
Gibt die Anzahl von Minuten zwischen zwei Daten zurück
MinutesDiff(<Enddatum>, <Startdatum>)
Monat
Gibt die Zahl zurück, die dem Monat des Datums entspricht
Month(<Datum>)
MonthsAgo
Gibt das Datum zurück, das dem aktuellen Datum abzüglich n Monaten entspricht
MonthsAgo(<Zahl>)
MonthsDiff
Gibt die Anzahl von Monaten zwischen zwei Daten zurück
MonthsDiff(<Enddatum>, <Startdatum>)
MonthsOld
Gibt das Alter in Monaten in Bezug auf ein Datum zurück
MonthsOld(<Datum>)
Oldest
Gibt das älteste Datum in einem Bereich zurück
Oldest(<Datum, Datum>)
Second
Gibt die Sekunden der im Datum angegebenen Uhrzeit zurück
Second(<Datum>)
SecondsDiff
Gibt die Anzahl von Sekunden zwischen zwei Daten zurück
SecondsDiff(<Enddatum>, <Startdatum>)
SubDays
Zieht eine Anzahl an Tagen von einem Datum ab
SubDays(<Datum>, <Anzahl>)
SubHours
Zieht eine Anzahl an Stunden von einem Datum ab
SubHours(<Datum>, <Anzahl>)
SubMinutes
Zieht eine Anzahl an Minuten von einem Datum ab
SubMinutes(<Datum>, <Anzahl>)
SubMonths
Zieht eine Anzahl an Monaten von einem Datum ab
SubMonths(<Datum>, <Anzahl>)
SubSeconds
Zieht eine Anzahl an Sekunden von einem Datum ab
SubSeconds(<Datum>, <Anzahl>)
SubYears
Zieht eine Anzahl an Jahren von einem Datum ab
SubYears(<Datum>, <Anzahl>)
ToDate
Konvertiert Datum und Uhrzeit in ein Datum
ToDate(<Datum + Uhrzeit>)
ToDateTime
Konvertiert einen String in Datum und Uhrzeit
ToDateTime(<String>)
ToTimestamp
Konvertiert einen String in einen Zeitstempel
ToTimestamp(<String>)
ToTimeZone
Konvertiert Datum und Uhrzeit in eine Zeitzone
ToTimeZone(<Datum>, <Zeitzone>)
TruncDate
Rundet ein Datum mit Uhrzeit auf die nächste Sekunde
TruncDate(@lastModified, <Anzahl Sekunden>)
TruncDateTZ
Rundet ein Datum mit Uhrzeit auf eine angegebene, in Sekunden ausgedrückte Genauigkeit
TruncDateTZ(<Datum>, <Anzahl an Sekunden>, <Zeitzone>)
TruncQuarter
Rundet ein Datum auf das Quartal
TruncQuarter(<Datum>)
TruncTime
Rundet die Uhrzeit auf die nächste Sekunde auf
TruncTime(<Datum>, <Anzahl an Sekunden>)
TruncWeek
Rundet ein Datum auf die Woche
TruncWeek(<Datum>)
TruncYear
Rundet ein Datum und eine Uhrzeit auf den ersten Januar des Jahres
TruncYear(<Datum>)
WeekDay
Gibt die Zahl des Wochentages in Bezug auf das Datum aus (0=Montag, 6=Sonntag).
WeekDay(<Datum>)
Year
Gibt die Zahl zurück, die dem Jahr des Datums entspricht
Year(<Datum>)
YearAndMonth
Gibt die Zahl zurück, die dem Jahr und Monat des Datums entspricht
YearAndMonth(<Datum>)
YearsAgo
Gibt die Anzahl von Jahren zwischen einem bestimmten Datum und dem aktuellen Datum aus
YearsAgo(<Datum>)
YearsDiff
Gibt die Anzahl von Jahren zwischen zwei Daten aus
YearsDiff(<Enddatum>, <Startdatum>)
YearsOld
Gibt das Alter eines Datums in Jahren zurück
YearsOld(<Datum>)
NOTE
Beachten Sie, dass die Funktion DateOnly nicht die Zeitzone der bzw. des Benutzenden, sondern des Servers verwendet.

Geomarketing

Die Geomarketing-Funktionen dienen der Manipulation von geografischen Werten.

Name
Beschreibung
Syntax
Distance
Gibt die Entfernung zwischen zwei durch Längen- und Breitengrad bezeichneten Punkten aus (in Grad).
Distance(<Längengrad A>, <Breitengrad A>, <Längengrad B>, <Breitengrad B>)

Numerisch

Die numerischen Funktionen dienen dazu, Text in Zahlen zu konvertieren.

Name
Beschreibung
Syntax
Abs
Gibt den absoluten Wert einer Zahl aus
Abs(<Zahl>)
Ceil
Gibt die kleinste ganze Zahl aus, die größer oder gleich der angegebenen Zahl ist
Ceil(<Zahl>)
Floor
Gibt die größte ganze Zahl aus, die kleiner oder gleich der angegebenen Zahl ist
Floor(<Zahl>)
Greatest
Gibt die größere von zwei Zahlen aus
Greatest(<Zahl 1>, <Zahl 2>)
Least
Gibt die kleinere von zwei Zahlen aus
Least(<Zahl 1>, <Zahl 2>)
Mod
Gibt den Rest der ganzzahligen Division von n1 durch n2 aus
Mod(<Zahl 1>, <Zahl 2>)
Percent
Gibt das Verhältnis zwischen zwei Werten in Prozent aus
Percent(<Zahl 1>, <Zahl 2>)
Random
Gibt einen Zufallswert aus
Random()
Round
Rundet eine Zahl auf n Dezimalstellen
Round(<Zahl>, <Anzahl Dezimalstellen>)
Sign
Gibt das Vorzeichen einer Zahl aus
Sign(<Zahl>)
ToDouble
Konvertiert einen Integer in einen Real
ToDouble(<Zahl>)
ToInt64
Konvertiert einen Real in einen 64-Bit-Integer
ToInt64(<Zahl>)
ToInteger
Konvertiert einen Real in einen Integer
ToInteger(<Zahl>)
Trunc
Kürzt n1 auf n2 Dezimalstellen
Trunc(<n1>, <n2>)

Sonstige

In dieser Tabelle sind die restlichen verfügbaren Funktionen enthalten.

Name
Beschreibung
Syntax
AESEncrypt
Verschlüsselt den im Argument angegebenen String
AESEncrypt(<Wert>)
Case
Gibt Wert 1 zurück, wenn die Bedingung zutrifft. Wenn nicht, wird Wert 2 zurückgegeben.
Case(When(<Bedingung>, <Wert 1>), Else(<Wert 2>))
ClearBit
Löscht das Flag aus dem Wert
ClearBit(<Kennung>, <Flag>)
Coalesce
Gibt den Wert 2 aus, wenn der Wert 1 gleich null oder leer ist, sonst den Wert 1
Coalesce(<Wert 1>, <Wert 2>)
Decode
Gibt Wert 3 zurück, wenn Wert 1 = Wert 2 ist. Wenn nicht, wird Wert 4 zurückgegeben.
Decode(<Wert 1>, <Wert 2>, <Wert 3>, <Wert 4>)
Else
Gibt den Wert 1 aus (kann nur als Parameter der 'Case'-Funktion verwendet werden)
Else(<Wert 1>, <Wert 2>)
GetEmailDomain
Extrahiert die Domain einer E-Mail-Adresse
GetEmailDomain(<Wert>)
GetMirrorURL
Ruft die URL des Mirrorseiten-Servers ab
GetMirrorURL(<Wert>)
Iif
Gibt Wert 1 aus, wenn der Ausdruck wahr ist. Wenn nicht, wird Wert 2 zurückgegeben
Iif(<Bedingung>, <Wert 1>, <Wert 2>)
IsBitSet
Gibt an, ob das Flag im Wert vorkommt
IsBitSet(<Kennung>, <Flag>)
IsEmptyString
Gibt den Wert 2 aus, wenn der String 1 leer ist, sonst den Wert 3
IsEmptyString(<Wert 1>, <Wert 2>, <Wert 3>)
NewUUID
Gibt eine eindeutige ID zurück
NewUUID()
NoNull
Gibt einen Leerstring aus, wenn das Argument gleich null ist
NoNull(<Wert>)
RowId
Gibt die Zeilennummer aus
RowId
SetBit
Setzt das Flag im Wert
SetBit(<Kennung>, <Flag>)
ToBoolean
Konvertiert eine Zahl in einen booleschen Wert
ToBoolean(<Zahl>)
When
Gibt Wert 1 aus, wenn der Ausdruck wahr ist. Falls nicht, wird Wert 2 zurückgegeben (kann nur als Parameter der Case-Funktion verwendet werden)
When(<Bedingung>, <Wert 1>)

Zeichenfolge

Die String-Funktionen dienen der Manipulation einer Reihe von Strings.

Name
Beschreibung
Syntax
AllNonNull2
Gibt an, ob alle Parameter ungleich null und nicht leer sind
AllNonNull2(<String>, <String>)
AllNonNull3
Gibt an, ob alle Parameter ungleich null und nicht leer sind
AllNonNull3(<String>, <String>, <String>)
Ascii
Gibt den ASCII-Wert des ersten Zeichens des Strings aus.
Ascii(<String>)
Char
Gibt das ASCII-Code-Zeichen 'n' aus
Char(<Zahl>)
Charindex
Gibt die Position von Zeichenfolge 2 in Zeichenfolge 1 zurück.
Charindex(<String>, <String>)
dataLength
Gibt die Größe der Zeichenfolge in Bytes zurück
dataLength(<String>)
GetLine
Gibt die n-te Zeile (beginnend bei 1) des Strings aus
GetLine(<String>)
IfEquals
Gibt den dritten Parameter zurück, wenn die ersten beiden Parameter identisch sind. Wenn nicht, wird der letzte Parameter zurückgegeben
IfEquals(<String>, <String>, <String>, <String>)
IsMemoNull
Gibt an, ob das als Parameter ausgegebene Memo gleich null ist
IsMemoNull(<Memo>)
JuxtWords
Verkettet die als Parameter übergebenen Zeichenfolgen. Fügt bei Bedarf Leerzeichen zwischen den Zeichenfolgen hinzu.
JuxtWords(<String>, <String>)
JuxtWords3
Verkettet die als Parameter übergebenen Zeichenfolgen. Fügt bei Bedarf Leerzeichen zwischen den Zeichenfolgen hinzu
JuxtWords3(<String>, <String>, <String>)
Left
Gibt die n ersten Zeichen des Strings aus
Left(<String>, <Zahl>)
Length
Gibt die Länge des Strings aus
Length(<String>)
Line
Extrahiert Zeile n aus dem String
Line(<String>,<Zahl>)
Lower
Gibt den String in Kleinbuchstaben aus
Lower(<String>)
LPad
Gibt den String linksseitig aufgefüllt aus
LPad (<String>, <Zahl>, <Zeichen>)
Ltrim
Löscht die Leerstellen links vom String
Ltrim(<String>)
Md5Digest
Gibt eine hexadezimale Darstellung des MD5-Schlüssels eines Strings aus
Md5Digest(<String>)
MemoContains
Gibt an, ob das Memo den als Parameter übergebenen String enthält
MemoContains(<Memo>, <String>)
NodeValue
Extrahiert den Wert eines XML-Felds aus seinem XPath und den Felddaten
NodeValue (<String>, <String>)
Replace
Ersetzt alle Vorkommen eines angegebenen String-Werts durch einen anderen String-Wert.
Replace(<String>,<String>,<String>)
Right
Gibt die n letzten Zeichen des Strings aus
Right(<String>)
RPad
Gibt den String rechtsseitig aufgefüllt aus
RPad(<String>, <Zahl>, <Zeichen>)
Rtrim
Löscht die Leerstellen rechts vom String
Rtrim(<String>)
Sha256Digest
Hexadezimale Darstellung des SHA256-Schlüssels einer Zeichenfolge.
Sha256Digest (<String>)
Sha512Digest
Hexadezimale Darstellung des SHA512-Schlüssels einer Zeichenfolge.
Sha512Digest (<String>)
Smart
Gibt jedes Wort des Strings beginnend mit einem Großbuchstaben aus
Smart(<String>)
Substring
Extrahiert aus dem String den Teilstring, der mit dem Zeichen n1 beginnt und die Länge n2 aufweist
Substring(<String>, <Start>, <Länge>)
ToString
Konvertiert eine Zahl in einen String
ToString(<Zahl>, <Zahl>)
Upper
Gibt den String in Großbuchstaben aus
Upper(<String>)
VirtualLink
Gibt den Fremdschlüssel einer als erster Parameter übergebenen Relation aus, wenn die beiden anderen Parameter identisch sind
VirtualLink(<Zahl>, <Zahl>, <Zahl>)
VirtualLinkStr
Gibt den Fremdschlüssel (Text) einer als erster Parameter übergebenen Relation aus, wenn die beiden anderen Parameter identisch sind
VirtualLinkStr(<String>, <Zahl>, <Zahl>)

Fenster

Name
Beschreibung
Syntax
_Over__
Ruft die als ersten Parameter eingegebene SQL-Funktion über die als zweiten Parameter eingegebenen Felder „Partition“ oder „Anordnen nach“ aus
_Over_ (<Wert>, <Wert>)
Desc
Absteigende Sortierung
Desc(<Wert 1>)
OrderBy
Sortiert das Ergebnis innerhalb der Partition
OrderBy(<Wert 1>)
PartitionBy
Partitioniert das Ergebnis einer Abfrage in einer Tabelle
PartitionBy(<Wert 1>)
RowNum
Erzeugt eine Zeilennummer in Abhängigkeit von der Tabellenpartition und der Sortierreihenfolge
RowNum(PartitionBy(<Wert 1>), OrderBy(<Wert 1>))
AI Knowledge Reference

This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.

For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.

  • TL;DR: This page explains how to use the expression editor to manually build rule conditions with fields, variables, and helper functions for manipulating dates, strings, numbers, and other values in Orchestrated campaigns.

Intents:

  • Open the expression editor from the Attribute or Value field when configuring a custom condition in the rule builder.
  • Enter an expression directly in the input field, or insert a field, variable, or helper function using the + button.
  • Use helper functions (Aggregate, Date, Geomarketing, Numeric, Others, String, Window) to manipulate dates, strings, numeric values, and sorting.
  • Insert variables into an expression from the Value field.

Glossary:

  • Expression editor: a mode accessed from the rule builder Edit expression button that lets you manually enter conditions to form a rule, using advanced functions (product-specific)
  • Helper functions: functions sorted by category (Aggregate, Date, Geomarketing, Numeric, Others, String, Window) available in the expression editor to manipulate values (product-specific)
  • Fields: items available in the expression editor that correspond to the targeting dimension of the query (product-specific)
  • Variables: items available in the expression editor, from the Value field menu, that can be used in an expression (product-specific)

Guardrails:

  • The expression editor is available from the rule builder Edit expression button, for the Attribute and Value fields, when configuring a custom condition.
  • The variables menu in the expression editor is available only for the Value field, not for the Attribute field.
  • The DateOnly function takes into account the server’s timezone, not the operator’s.

Terminology:

  • Canonical name: expression editor — variants: Edit expression
  • Do not confuse: “fields” (correspond to the targeting dimension of the query) ≠ “variables” (listed in a separate menu, available from the Value field)

FAQ:

  • Q: Where is the expression editor available from? — The rule builder Edit expression button, for the Attribute and Value fields, when configuring a custom condition.
  • Q: How do I add a field, variable, or helper function to an expression? — Place your cursor in the expression where you want to add it and click the + button.
  • Q: What categories of helper functions are available? — Aggregate, Date, Geomarketing, Numeric, Others, String, and Window.
  • Q: Does the DateOnly function use my local timezone? — No, it takes into account the server’s timezone, not the operator’s.
  • Q: Can I use variables from the Attribute field? — No, the variables menu is available only for the Value field.

Related pages:

  • For using variables in an expression from the Value field: Learn how to use variables in Orchestrated campaigns (orchestrated/variables-orchestrated-campaigns.md)

Personas:

  • marketer: Can open the expression editor from the Attribute or Value field when configuring a custom condition, and enter an expression directly in the input field. Can place the cursor and select the + button to add a field, variable, or helper function. Can use helper functions sorted by category, such as Aggregate, Date, Geomarketing, Numeric, Others, String, and Window, to manipulate dates, strings, numeric values, and sorting. The page states that the variables menu is available only for the Value field. Where: “Work with the expression editor”.

Onboarding:

  • Level: Experienced
  • First minimal step: Select the Edit expression button for the Attribute or Value field when configuring a custom condition.
  • Next: Learn how to use variables in the expression editor: Use variables in Orchestrated campaigns (orchestrated/variables-orchestrated-campaigns.md)
recommendation-more-help
journey-optimizer-help