Funktionen für Arrays, Listen und Sets
Profile Query Language (PQL) bietet Funktionen, die die Interaktion mit Arrays, Listen und Zeichenfolgen vereinfachen. Weitere Informationen zu anderen PQL-Funktionen finden Sie in der Profile Query Language Übersicht .
Enthalten
Mit der in
-Funktion wird bestimmt, ob ein Element einem Array oder einer Liste angehört.
Format
{VALUE} in {ARRAY}
Beispiel
Die folgende PQL-Abfrage definiert Personen, die im März, Juni oder September Geburtstag haben.
person.birthMonth in [3, 6, 9]
Nicht enthalten
Mit der notIn
-Funktion wird bestimmt, ob ein Element einem Array oder einer Liste nicht angehört.
notIn
-Funktion stellt außerdem sicher, dass keiner der Werte null ist. Daher sind die Ergebnisse keine exakte Negation der in
-Funktion.Format
{VALUE} notIn {ARRAY}
Beispiel
Die folgende PQL-Abfrage definiert Personen, die nicht im März, Juni oder September Geburtstag haben.
person.birthMonth notIn [3, 6, 9]
Schnittmengen
Mit der intersects
-Funktion wird bestimmt, ob zwei Arrays oder Listen mindestens ein gemeinsames Element aufweisen.
Format
{ARRAY}.intersects({ARRAY})
Beispiel
Die folgende PQL-Abfrage definiert Personen, deren Lieblingsfarben mindestens eine der folgenden Farben beinhalten: Rot, Blau oder Grün.
person.favoriteColors.intersects(["red", "blue", "green"])
Schnittmenge
Die intersection
-Funktion dient zur Bestimmung der gemeinsamen Elemente von zwei Arrays oder Listen.
Format
{ARRAY}.intersection({ARRAY})
Beispiel
Die folgende PQL-Abfrage definiert, ob unter den Lieblingsfarben von Person 1 und auch Person 2 die Farben Rot, Blau und Grün sind.
person1.favoriteColors.intersection(person2.favoriteColors) = ["red", "blue", "green"]
Teilmenge von
Mit der subsetOf
-Funktion wird bestimmt, ob ein bestimmtes Array (Array A) eine Teilmenge eines anderen Arrays (Array B) ist. Mit anderen Worten: ob alle Elemente in Array A Elemente von Array B sind.
Format
{ARRAY}.subsetOf({ARRAY})
Beispiel
Die folgende PQL-Abfrage definiert Personen, die alle ihrer Lieblingsstädte besucht haben.
person.favoriteCities.subsetOf(person.visitedCities)
Obermenge
Mit der supersetOf
-Funktion wird bestimmt, ob ein bestimmtes Array (Array A) eine Obermenge eines anderen Arrays (Array B) ist. Mit anderen Worten: ob Array A alle Elemente in Array B enthält.
Format
{ARRAY}.supersetOf({ARRAY})
Beispiel
Die folgende PQL-Abfrage definiert Personen, die mindestens einmal Sushi und mindestens einmal Pizza gegessen haben.
person.eatenFoods.supersetOf(["sushi", "pizza"])
Enthält
Mit der includes
-Funktion wird bestimmt, ob ein Array oder eine Liste ein bestimmtes Element enthält.
Format
{ARRAY}.includes({ITEM})
Beispiel
Die folgende PQL-Abfrage definiert Personen, zu deren Lieblingsfarben Rot gehört.
person.favoriteColors.includes("red")
Verschieden
Die distinct
-Funktion dient dazu, doppelt vorhandene Werte aus einem Array oder einer Liste zu entfernen.
Format
{ARRAY}.distinct()
Beispiel
Die folgende PQL-Abfrage definiert Personen, die Bestellungen in mehr als einem Geschäft aufgegeben haben.
person.orders.storeId.distinct().count() > 1
Gruppieren nach
Die groupBy
-Funktion dient dazu, Werte eines Arrays oder einer Liste basierend auf dem Wert des Ausdrucks in eine Gruppe zu unterteilen.
Format
{ARRAY}.groupBy({EXPRESSION)
{ARRAY}
{EXPRESSION}
Beispiel
Die folgende PQL-Abfrage gruppiert alle Bestellungen anhand des Geschäfts, in dem die Bestellung aufgegeben wurde.
orders.groupBy(storeId)
Filter
Die filter
-Funktion wird zum Filtern eines Arrays oder einer Liste anhand eines Ausdrucks verwendet.
Format
{ARRAY}.filter({EXPRESSION})
{ARRAY}
{EXPRESSION}
Beispiel
Die folgende PQL-Abfrage definiert alle Personen, die mindestens 21 Jahre alt sind.
person.filter(age >= 21)
Zuordnung
Die map
-Funktion wird zum Erstellen eines neuen Arrays verwendet, indem auf jedes Element in einem Array ein Ausdruck angewendet wird.
Format
array.map(expression)
Beispiel
Mit der folgenden PQL-Abfrage wird ein neues Array mit Zahlen erstellt und der Wert der Originalzahlen quadriert.
numbers.map(square)
Erste n
in Array first-n
Die topN
-Funktion gibt die ersten N
Elemente in einem Array zurück, wenn sie anhand des angegebenen numerischen Ausdrucks in aufsteigender Reihenfolge sortiert werden.
Format
{ARRAY}.topN({VALUE}, {AMOUNT})
{ARRAY}
{VALUE}
{AMOUNT}
Beispiel
Die folgende PQL-Abfrage gibt die fünf häufigsten Bestellungen mit dem höchsten Preis zurück.
orders.topN(price, 5)
Letzte n
in Array
Die bottomN
-Funktion gibt die letzten N
Elemente in einem Array zurück, wenn sie anhand des angegebenen numerischen Ausdrucks in aufsteigender Reihenfolge sortiert werden.
Format
{ARRAY}.bottomN({VALUE}, {AMOUNT})
{ARRAY}
{VALUE}
{AMOUNT}
Beispiel
Die folgende PQL-Abfrage gibt die fünf häufigsten Bestellungen mit dem niedrigsten Preis zurück.
orders.bottomN(price, 5)
Erstes Element
Mit der head
-Funktion wird das erste Element im Array oder in der Liste zurückgegeben.
Format
{ARRAY}.head()
Beispiel
Die folgende PQL-Abfrage gibt die erste der fünf häufigsten Bestellungen mit dem höchsten Preis zurück. Weiterführende Informationen zur topN
-Funktion finden Sie im Abschnitt Erste n
in Array.
orders.topN(price, 5).head()
Nächste Schritte
Nachdem Sie sich mit array-, list- und set-Funktionen vertraut gemacht haben, können Sie diese nun in Ihren PQL-Abfragen verwenden. Weitere Informationen zu anderen PQL-Funktionen finden Sie in Profil Query Language – Übersicht.