(Alpha) Beispiel-PQL-Ausdrücke für berechnete Attribute

WICHTIG

Die Funktion für berechnete Attribute ist derzeit alphanumerisch und steht nicht allen Benutzern zur Verfügung. Die Dokumentation und Funktionalität können sich ändern.

In Adobe Experience Platform sind berechnete Attribute Funktionen zum Aggregieren von Daten auf Ereignisebene in Profilattributen. Diese Funktionen werden automatisch berechnet, sodass sie für die Segmentierung, Aktivierung und Personalisierung verwendet werden können. Jedes berechnete Attribut wird mit grundlegenden Informationen wie einem Namen und einer Beschreibung, der Schemaklasse und dem Pfad zum Feld, in dem der Wert gespeichert werden soll, sowie einem Ausdruck definiert, dessen berechneter Wert dem Wert entspricht, den Sie im berechneten Attribut speichern möchten.

Die in berechneten Attributen verwendeten Ausdrücke werden mit Profile Query Language (PQL) erstellt, einer Experience-Datenmodell (XDM)-kompatiblen Abfragesprache, die die Definition und Ausführung von Abfragen für Echtzeit-Kundenprofildaten unterstützt.

Berechnete Attribute unterstützen derzeit die folgenden Funktionen: sum, count, min, max, and boolean. In diesem Handbuch werden einige der am häufigsten verwendeten PQL-Ausdrücke vorgestellt, die Sie beim Definieren Ihrer eigenen berechneten Attribute für Ihr Unternehmen verwenden können. Weitere Informationen zu PQL und Links zu zusätzlichen Formatierungsrichtlinien und Beispielen unterstützter Abfragen finden Sie unter PQL overview.

Streaming-Ausdrücke

Die folgende Tabelle enthält Details zu häufig verwendeten Abfrageausdrücken, die im Streaming-Modus unterstützt werden.

Beschreibung PQL-Ausdruck Eingabetyp:
Profil- oder Erlebnisereignis (EE[])
Ergebnistyp
Anzahl der Bilddownloads in den letzten sieben Tagen. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download" und contentType = "image"].count() Profil & EE[] Ganzzahl
Summe der Kundenausgaben für Sportartikel in den letzten sieben Tagen. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="transaction" und category = "sporting products"].sum(commerce.order.priceTotal) Profil & EE[] Ganzzahl oder Double
Durchschnittliche Kundenausgaben für Sportartikel in den letzten sieben Tagen.

Hinweis: Erfordert die Erstellung von drei berechneten Attributen.
ca1: xEvent[ (Zeitstempel tritt auf < 7="" days="" before="" now="">.sum(commerce.order.priceTotal)

ca2: xEvent[ (Zeitstempel tritt auf < 7="" days="" before="" now="">.count()

ca3: ca1 / ca2]]
Profil & EE[] Double
Hat der Kunde in den letzten sieben Tagen mehr als 100 USD für Sportartikel ausgegeben?

Hinweis: Erfordert die Erstellung von zwei berechneten Attributen.
ca1: xEvent[ (Zeitstempel tritt auf < 7="" days="" before="" now="">.sum(commerce.order.priceTotal)

ca2: ca1 > 100]
Profil & EE[] Boolesch
Hat der Kunde in den letzten sieben Tagen einen Kauf getätigt? chain(xEvent, timestamp, [A: WHAT(eventType = "transaction") WHEN(< 7 Tage vorher)]) Profil & EE[] Boolesch
Niedrigste Ausgaben für Sportartikel in den letzten sieben Tagen. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="transaction" und category = "sporting products"].min(commerce.order.priceTotal) Profil & EE[] Ganzzahl oder Double
Höchste Ausgaben für Sportartikel in den letzten sieben Tagen. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="transaction" und category = "sporting products"].max(commerce.order.priceTotal) Profil & EE[] Ganzzahl oder Double
Anzahl der Downloads jedes heruntergeladenen Produkts in den letzten sieben Tagen, indiziert nach Produkt. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.count())) Profil & EE[] Map[String, Integer]
Summe der numerischen Eigenschaft über Downloads der heruntergeladenen Produkte in den letzten 7 Tagen, indiziert nach Produkt. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.sum(commerce.order.priceTotal))) Profil & EE[] Map[String, Integer] oder Map[String, Double]
Durchschnitt der numerischen Eigenschaft gegenüber den Downloads der heruntergeladenen Produkte in den letzten 7 Tagen, indiziert nach Produkt.

Hinweis: Erfordert die Erstellung von drei berechneten Attributen.
ca1: xEvent[ (Zeitstempel tritt auf < 7="" days="" before="" now="">.groupBy(product).map((K, G) => mapEntry(K, G.sum(commerce.order.priceTotal)))

ca2: xEvent[(Zeitstempel tritt < 7="" days="" before="" now="">.groupBy(product).map((K, G) => mapEntry(K, G.count())

)) ca3: ca2 / ca1]]
Profil & EE[] Map[String, Double]
Mindestens numerische Eigenschaft gegenüber Downloads jedes heruntergeladenen Produkts in den letzten 7 Tagen, indiziert nach Produkt. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.min(commerce.order.priceTotal))) Profil & EE[] Map[String, Integer] oder Map[String, Double]
Maximale numerische Eigenschaft über Downloads der heruntergeladenen Produkte in den letzten 7 Tagen, indiziert nach Produkt. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.max(commerce.order.priceTotal))) Profil & EE[] Map[String, Integer] oder Map[String, Double]
Numerischer Ausdruck für ein Profil, nicht auf Ereignisse verweisen. if(person.gender = "female", 60, 65) Profil Ganzzahl oder Double
Boolescher Ausdruck für das Profil, nicht auf Ereignisse verweisen. person.birthYear >= 2000 Profil Boolesch
Zeichenfolgenausdruck im Profil, nicht auf Ereignisse verweisen. if(homeAddress.countryCode in ["US","MX","CA"], "NA", "ROW") Profil Zeichenfolge

Batch-Ausdrücke

Die folgende Tabelle enthält Details zu Abfrageausdrücken, die nur im Batch-Modus verfügbar sind, was bedeutet, dass sie derzeit nicht im Streaming verfügbar sind.

Beschreibung PQL-Ausdruck Eingabetyp:
Profil- oder Erlebnisereignis (EE[])
Ergebnistyp
Gibt an, ob die Summe numerischer Ausdrücke gegenüber Produktdownloads in den letzten 7 Tagen 100, indiziert nach Produkt, überschreitet. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.sum(commerce.order.priceTotal) > 100)) Profil & EE[] Map[String, Boolean]
Gibt an, ob der Durchschnitt numerischer Ausdrücke gegenüber Produktdownloads in den letzten 7 Tagen 100, indexiert nach Produkt, überschreitet. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, G.average(commerce.order.priceTotal) > 100) Profil & EE[] Map[String, Boolean]
Akkumulation verschiedener Metriken für jedes heruntergeladene Produkt in den letzten 7 Tagen, indiziert nach Produkt. xEvent[(Zeitstempel tritt < 7 Tage vor dem aktuellen Zeitpunkt auf) und eventType="download"].groupBy(product).map((K, G) => mapEntry(K, {"count": G.count(), "sum": G.sum(commerce.order.priceTotal)}) Profil & EE[] Zuordnung[Zeichenfolge, Objekt], wobei Objekt ein benutzerdefinierter XDM-Typ ist

Auf dieser Seite