Auflistungsfunktionen list-functions
Mit Listenfunktionen können Sie Sammlungen von Werten in Ihren Journey-Ausdrücken bearbeiten und verwenden. Diese Funktionen sind für das Filtern, Sortieren, Umwandeln und Analysieren von Arrays und Listen in Ihren Customer Journeys unerlässlich.
Verwenden Sie Listenfunktionen, wenn Sie Folgendes tun müssen:
- Filtern und Extrahieren bestimmter Elemente aus Sammlungen anhand von Kriterien (filter, getListItem)
- Sortieren und Organisieren von Listenelementen in auf- oder absteigender Reihenfolge (sort)
- Entfernen von Duplikaten und Abrufen eindeutiger Werte aus Listen (distinct, distinctWithNull)
- Überprüfen, ob Werte in Sammlungen vorhanden sind (in)
- Begrenzen der Anzahl der aus einer Liste zurückgegebenen Elemente (limit)
- Abrufen der Größe einer Liste (listSize) oder Umwandeln von Listen in verschiedene Formate (serializeList)
- Führen Sie bestimmte Vorgänge durch, z. B. Suchen nach gemeinsamen Elementen zwischen Listen intersect, Kombinieren von Listen mergeLists) oder Subtrahieren einer Liste von einer anderen (differenzLists)
Listenfunktionen bieten leistungsstarke Tools für die Arbeit mit komplexen Datenstrukturen und ermöglichen so eine ausgefeilte Datenbearbeitung und Bedingungslogik basierend auf Sammlungsinhalten.
DifferenceLists differenceLists
Gibt die Elemente der ersten Liste zurück, die nicht in der zweiten Liste vorhanden sind (festgelegte Differenz: list 1 - list 2). Null-Einträge werden übersprungen. Das Ergebnis entfernt immer doppelte Werte und behält die Einfügereihenfolge der ersten Liste bei.
differenceLists(<parameters>)| table 0-row-3 1-row-3 2-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| Liste 1 | listString, listInteger, listDecimal, listBoolean, listDuration, listDateTime, listDateTimeOnly oder listDateOnly | Liste, von der subtrahiert werden soll. |
| Liste 2 | Gleiche Art wie Liste 1. | Liste der aus Liste 1 zu entfernenden Elemente. |
differenceLists(listString,listString): listString
differenceLists(listInteger,listInteger): listInteger
differenceLists(listDecimal,listDecimal): listDecimal
differenceLists(listBoolean,listBoolean): listBoolean
differenceLists(listDuration,listDuration): listDuration
differenceLists(listDateTime,listDateTime): listDateTime
differenceLists(listDateTimeOnly,listDateTimeOnly): listDateTimeOnly
differenceLists(listDateOnly,listDateOnly): listDateOnly
| code language-json |
|---|
|
Gibt ['a','c'] zurück.
| code language-json |
|---|
|
Gibt ['a','b'] zurück.
| code language-json |
|---|
|
Gibt [] zurück.
distinct distinct
Gibt die unterschiedlichen Werte oder Objekte einer angegebenen Liste zurück. Einträge mit Null werden ignoriert.
distinct(<parameters>)| table 0-row-3 1-row-3 2-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly oder listObject | Zu verarbeitende Liste. Bei listObject muss es sich um einen Feldverweis handeln. |
| keyAttributeName | Zeichenfolge | Dieser Parameter ist optional und nur für listObject. Wenn der Parameter nicht angegeben wird, wird ein Objekt als doppelt betrachtet, wenn alle Attribute dieselben Werte aufweisen. Andernfalls wird ein Objekt als doppelt betrachtet, wenn das angegebene Attribut denselben Wert aufweist. |
distinct(<listInteger>)
Gibt eine Liste mit Ganzzahlen zurück.
distinct(<listDecimal>)
Gibt eine Liste mit Dezimalzahlen zurück.
distinct(<listString>)
Gibt eine Liste mit Zeichenfolgen zurück.
distinct(<listDateTimeOnly>)
Gibt eine Liste mit Datum/Uhrzeit-Werten ohne Berücksichtigung der Zeitzone zurück.
distinct(<listDateTime>)
Gibt eine Liste mit Datum/Uhrzeit-Werten zurück.
distinct(<listDateOnly>)
Gibt eine Liste mit Datumsangaben zurück.
distinct(<listBoolean>)
Gibt eine Liste mit booleschen Werten zurück.
distinct(<listDuration>)
Gibt eine Liste der Dauer zurück.
distinct(<listObject>)
distinct(<listObject>,<string>)
Gibt eine Liste mit Objekten zurück.
distinct([10,2,10,null])
Gibt [10, 2] zurück.
distinctWithNull distinctWithNull
Gibt die unterschiedlichen Werte oder Objekte einer angegebenen Liste zurück. Wenn die Liste mindestens einen Nullwert enthält, wird ein Nullwert in der zurückgegebenen Liste angezeigt.
distinctWithNull(<parameters>)| table 0-row-3 1-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly | Zu verarbeitende Liste. |
distinctWithNull(<listInteger>)
Gibt eine Liste mit Ganzzahlen zurück.
distinctWithNull(<listDecimal>)
Gibt eine Liste mit Dezimalzahlen zurück.
distinctWithNull(<listString>)
Gibt eine Liste mit Zeichenfolgen zurück.
distinctWithNull(<listDateTimeOnly>)
Gibt eine Liste mit Datum/Uhrzeit-Werten ohne Berücksichtigung der Zeitzone zurück.
distinctWithNull(<listDateTime>)
Gibt eine Liste mit Datum/Uhrzeit-Werten zurück.
distinctWithNull(<listDateOnly>)
Gibt eine Liste mit Datumsangaben zurück.
distinctWithNull(<listBoolean>)
Gibt eine Liste mit booleschen Werten zurück.
distinctWithNull(<listDuration>)
Gibt eine Liste der Dauer zurück.
distinctWithNull([10,2,10,null])
Gibt [10, 2, null] zurück.
Hinweis: Der Parameter <listObject> wird in dieser Funktion nicht unterstützt.
filter filter
Gibt ein listObject mit Objekten zurück, deren Schlüsselattribut einem der angegebenen Schlüsselwerte entspricht.
filter(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToFilter | listObject | Liste der zu filternden Objekte. Muss ein Feldverweis sein. |
| keyAttributeName | Zeichenfolge | Attributname in den Objekten der angegebenen Liste, der als Schlüssel zum Filtern verwendet wird |
| keyValueList | list | Schlüsselwerte für die Filterung |
filter(listObject, string, listString)
filter(listObject, string, listInteger)
filter(listObject, string, listDecimal)
filter(listObject, string, listDateTime)
filter(listObject, string, listDateTimeOnly)
filter(listObject, string, listDateOnly)
filter(listObject, string, listDuration)
filter(listObject, string, listBoolean)
Gibt ein listObject zurück.
Hier ist ein Beispiel für eine Payload, die in einem eingehenden Ereignis „myevent“ übergeben wird:
| code language-json |
|---|
|
Sie können den folgenden Ausdruck verwenden:
| code language-json |
|---|
|
Gibt ein listObject mit den beiden Objekten „product2“ und „product3“ als ID zurück.
getListItem getListItem
Gibt das Element der Liste am angegebenen Index zurück.
getListItem(<parameters>)| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 | |
|---|---|
| Parameter | Typ |
| list | listString |
| list | listBoolean |
| list | listInteger |
| list | listDecimal |
| list | listDuration |
| list | listDateTime |
| list | listDateTimeOnly |
| list | listDateOnly |
| index | integer |
getListItem(<listInteger>,<index>)
Gibt eine Ganzzahl zurück.
getListItem(<listDecimal>,<index>)
Gibt eine Dezimalzahl zurück.
getListItem(<listString>,<index>)
Gibt eine Zeichenfolge zurück.
getListItem(<listDateTimeOnly>,<index>)
Gibt einen Datum/Uhrzeit-Wert ohne Berücksichtigung der Zeitzone zurück.
getListItem(<listDateTime>,<index>)
Gibt einen Datum/Uhrzeit-Wert zurück.
getListItem(<listDateOnly>,<index>)
Gibt eine Liste mit Datumsangaben zurück.
getListItem(<listBoolean>,<index>)
Gibt einen booleschen Wert zurück.
getListItem(<listDuration>,<index>)
Gibt eine Dauer zurück.
getListItem([10, 2, 3], 1)
Gibt „2“ zurück
getListItem(["A", "B", "C"], 2)
Gibt „C“ zurück
Beispiele mit dem Ereignisfeld „event.appVersion“ mit dem Wert: 20.45.2.3434
split(@event{event.appVersion}, "\\.")
Gibt ["20", "45", "2", "3434"] zurück
getListItem(split(@event{event.appVersion}, "\\."), 0)
Gibt „20“ zurück
in in
Überprüft, ob sich der erste Argumentwert in der Liste befindet. Die Prüfung wird mithilfe eines Gleichzeichens für jeden Argumentwert durchgeführt. Gibt „true“ zurück, wenn der Argumentwert gefunden wurde, andernfalls „false“.
Der Typ von <expression> muss mit Elementen der Liste übereinstimmen. Zur Erinnerung: Typen von Elementen in der Liste müssen miteinander übereinstimmen.
in(<parameters>)| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 | |
|---|---|
| Parameter | Typ |
| Zeichenfolge | Zeichenfolge |
| Boolesch | Boolesch |
| Ganzzahl | Ganzzahl |
| Dezimal | Dezimal |
| Dauer | Dauer |
| DateTime | DateTime |
| DateTimeOnly | DateTimeOnly |
| Liste | listString |
| Liste | listBoolean |
| Liste | listInteger |
| Liste | listDecimal |
| Liste | listDuration |
| Liste | listDateTime |
| Liste | listDateTimeOnly |
| Liste | listDateOnly |
in(<integer>,<listInteger>)
in(<decimal>,<listDecimal>)
in(<string>,<listString>)
in(<boolean>,<listBoolean>)
in(<dateTimeOnly>,<listDateTimeOnly>)
in(<dateTime>,<listDateTime>)
in(<dateOnly>,<listDateOnly>)
in(<duration>,<listDuration>)
Geben einen booleschen Wert zurück.
in(4,[4,5,3,4])
Gibt „true“ zurück.
in(8,[4,5,3,4])
Gibt „false“ zurück.
in(#{ExperiencePlatform.ProfileFieldGroup.profile.person.gender}, ["male"])
intersect intersect
Gibt die gemeinsamen Werte in den beiden Eingabe-Listen zurück. Wenn eine der beiden Listen null ist, wird eine leere Liste zurückgegeben.
intersect(<parameters>)| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| Parameter | Typ |
| Liste 1 | Liste |
| Liste 2 | Liste |
intersect(listString,listString): listString
intersect(listDecimal,listDecimal): listDecimal
intersect(listInteger,listInteger): listInteger
intersect(listDateTime,listDateTime): listDateTime
intersect(listDateTimeOnly,listDateTimeOnly): listDateTimeOnly
intersect(listDateOnly,listDateOnly): listDateOnly
intersect(listDuration,listDuration): listDuration
intersect(listBoolean,listBoolean): listBoolean
Gibt eine Liste zurück.
| code language-json |
|---|
|
Gibt [“sports”, “news” zurück]
| code language-json |
|---|
|
Gibt häufige Elemente zwischen Profil-Attributen und der angegebenen Liste von Kategorien zurück.
| code language-json |
|---|
|
Gibt häufige Elemente zwischen Profil-Attributen und angegebenem Ereignis-Feld zurück.
limit limit
Gibt die ersten oder letzten n Elemente einer Liste zurück.
limit(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly oder listObject | Zu berücksichtigende Liste. Bei listObject muss es sich um einen Feldverweis handeln. |
| numberOfItems | integer | Anzahl der aus der angegebenen Liste zurückzugebenden Elemente. |
| firstOrLastItems | Boolescher Wert | Dieser Parameter ist optional (standardmäßig „true“). „True“ gibt die ersten Elemente zurück. „False“ gibt die letzten Elemente zurück. |
limit(<listString>,<integer>)
limit(<listString>,<integer>,<boolean>)
Gibt eine Liste mit Zeichenfolgen zurück.
limit(<listInteger>,<integer>)
limit(<listInteger>,<integer>,<boolean>)
Gibt eine Liste mit Ganzzahlen zurück.
limit(<listDecimal>,<integer>)
limit(<listDecimal>,<integer>,<boolean>)
Gibt eine Liste mit Dezimalzahlen zurück.
limit(<listBoolean>,<integer>)
limit(<listBoolean>,<integer>,<boolean>)
Gibt eine Liste mit booleschen Werten zurück.
limit(<listDateOnly>,<integer>)
limit(<listDateOnly>,<integer>,<boolean>)
Gibt eine Liste mit Datumsangaben zurück.
limit(<listDateTimeOnly>,<integer>)
limit(<listDateTimeOnly>,<integer>,<boolean>)
Gibt eine Liste mit Datum/Uhrzeit-Werten ohne Berücksichtigung der Zeitzone zurück.
limit(<listDateTime>,integer>)
limit(<listDateTime>,<integer>,<boolean>)
Gibt eine Liste mit Datum/Uhrzeit-Werten zurück.
limit(<listDuration>,<integer>)
limit(<listDuration>,<integer>,<boolean>)
Gibt eine Liste der Dauer zurück.
limit(<listObject>,<integer>)
limit(<listObject>,<integer>,<boolean>)
Gibt eine Liste mit Objekten zurück.
limit(["A", "B", "C", "D", "E"], 3)
Gibt ["A","B","C"] zurück.
limit(["A", "B", "C", "D", "E"], 3, false)
Gibt ["C","D","E"] zurück.
listSize listSize
Zählt die Anzahl der Elemente in der Liste.
listSize(<parameters>)| table 0-row-3 1-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly oder listObject | Zu verarbeitende Liste. Bei listObject muss es sich um einen Feldverweis handeln. Ein listObject kann kein Null-Objekt enthalten. |
listSize(<listInteger>)
listSize(<listDecimal>)
listSize(<listString>)
listSize(<listBoolean>)
listSize(<listDateTimeOnly>)
listSize(<listDateTime>)
listSize(<listDateOnly>)
listSize(<listDuration>)
Gibt eine Ganzzahl zurück.
listSize(<listObject>)
listSize([10,2,3])
Gibt 3 zurück.
listSize(@event{my_event.productListItems})
Gibt die Anzahl der Objekte im angegebenen Array von Objekten zurück (listObject-Typ).
mergeLists mergeLists
Kombiniert zwei Listen. Wenn deduplicate true ist, wird die Vereinigung der beiden Listen mit entfernten doppelten Werten zurückgegeben. Wenn deduplicate false ist, gibt die Verkettung der beiden Listen zurück (Elemente von Liste 1 gefolgt von Elementen von Liste 2), wobei Duplikate beibehalten werden. Null-Einträge werden übersprungen.
Hinweis: Der deduplicate-Parameter muss ein true oder ein false sein, kein dynamischer boolescher Ausdruck.
mergeLists(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| Liste 1 | listString, listInteger, listDecimal, listBoolean, listDuration, listDateTime, listDateTimeOnly oder listDateOnly | Erste Liste. Seine Elemente werden zuerst zum Ergebnis hinzugefügt. |
| Liste 2 | Gleiche Art wie Liste 1. | Zweite Liste. Die darin enthaltenen Elemente werden nach den Elementen der Liste 1 hinzugefügt. |
| deduplizieren | Boolesches Literal | true gibt die Vereinigung beider Listen mit entfernten Duplikaten zurück. false gibt die Verkettung beider Listen zurück, wobei Duplikate beibehalten werden. Muss ein wörtliches true oder false sein. |
mergeLists(listString,listString,boolean): listString
mergeLists(listInteger,listInteger,boolean): listInteger
mergeLists(listDecimal,listDecimal,boolean): listDecimal
mergeLists(listBoolean,listBoolean,boolean): listBoolean
mergeLists(listDuration,listDuration,boolean): listDuration
mergeLists(listDateTime,listDateTime,boolean): listDateTime
mergeLists(listDateTimeOnly,listDateTimeOnly,boolean): listDateTimeOnly
mergeLists(listDateOnly,listDateOnly,boolean): listDateOnly
| code language-json |
|---|
|
Gibt ['a','b','c'] zurück.
| code language-json |
|---|
|
Gibt ['a','b','b','c'] zurück.
serializeList serializeList
Konvertiert eine angegebene Liste (alle Typen außer listObject) in eine Zeichenfolge.
serializeList(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToProcess | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly | Liste zur Konvertierung in eine Zeichenfolge. |
| Trennzeichen | string | Trennzeichen zwischen den einzelnen Listenelementen in der Ausgabezeichenfolge. |
| addQuotes | boolean | Dieser Parameter gibt an, ob jedes Element der Ausgabezeichenfolge Anführungszeichen enthalten soll (true) oder nicht (false). |
serializeList(<listInteger>,<string>,<boolean>)
serializeList(<listDecimal>,<string>,<boolean>)
serializeList(<listString>,<string>,<boolean>)
serializeList(<listBoolean>,<string>,<boolean>)
serializeList(<listDateTimeOnly>,<string>,<boolean>)
serializeList(<listDateTime>,<string>,<boolean>)
serializeList(<listDateOnly>,<string>,<boolean>)
serializeList(<listDuration>,<string>,<boolean>)
Gibt eine Zeichenfolge zurück.
serializeList(["Hello","World"], " ", false)
Gibt „Hello World“ zurück.
serializeList(["Hello", "World"], ",", true)
Gibt „“Hello”,“World”“ zurück.
sort sort
Sortiert eine Liste von Werten oder Objekten in ihrer natürlichen Reihenfolge.
sort(<parameters>)| table 0-row-3 1-row-3 2-row-3 3-row-3 | ||
|---|---|---|
| Parameter | Typ | Beschreibung |
| listToSort | listString, listBoolean, listInteger, listDecimal, listDuration, listDateTime, listDateTimeOnly, listDateOnly oder listObject | Zu sortierende Liste. Bei listObject muss es sich um einen Feldverweis handeln. |
| keyAttributeName | Zeichenfolge | Dieser Parameter ist nur für listObject. Der Attributname in den Objekten der angegebenen Liste wird als Schlüssel zum Filtern verwendet. |
| sortingOrder | Boolescher Wert | Aufsteigend (true) oder absteigend (false) |
sort(<listInteger>,<boolean>)
Gibt eine Liste mit Ganzzahlen zurück.
sort(<listDecimal>,<boolean>)
Gibt eine Liste mit Dezimalzahlen zurück.
sort(<listString>,<boolean>)
Gibt eine Liste mit Zeichenfolgen zurück.
sort(<listDateTimeOnly>,<boolean>)
Gibt eine Liste mit Datum/Uhrzeit-Werten ohne Berücksichtigung der Zeitzone zurück.
sort(<listDateTime>,<boolean>)
Gibt eine Liste mit Datum/Uhrzeit-Werten zurück.
sort(<listDateOnly>,<boolean>)
Gibt eine Liste mit Datumsangaben zurück.
sort(<listBoolean>,<boolean>)
Gibt eine Liste mit booleschen Werten zurück.
sort(<listObject>,<string>,<boolean>)
Gibt eine Liste mit Objekten zurück.
sort(["A", "C", "B"], true)
Gibt ["A","B","C"] zurück.
sort([1, 3, 2], false)
Gibt [3, 2, 1] zurück.
sort(@event{my_event.productListItems}, "SKU", true)
Gibt das listObject, geordnet nach SKU-Attribut (aufsteigende Reihenfolge), zurück
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 documents all list functions available in AJO journey expressions, covering how to filter, sort, deduplicate, check membership, limit, serialize, merge, subtract, and find intersections of lists and arrays.
Intents:
- Remove duplicate values from a list using
distinct(ignoring nulls) ordistinctWithNull(preserving nulls) - Filter a listObject to return only objects matching specific key values using
filter - Retrieve an element at a specific index from a list using
getListItem - Check whether a value exists in a list using
in - Find common elements between two lists using
intersect - Combine two lists, with or without deduplication, using
mergeLists - Subtract one list from another (set difference) using
differenceLists - Return the first or last N elements of a list using
limit - Count the total number of elements in a list using
listSize - Convert a list to a delimited string using
serializeList - Sort a list in ascending or descending order using
sort
Glossary:
- listObject: A list of complex objects that must be a field reference; cannot contain null objects (product-specific)
- keyAttributeName: An optional string parameter used with
distinct,filter, andsortto identify which object attribute to use for deduplication, filtering, or sorting (product-specific) - intersect: A set operation returning only the elements present in both input lists
- mergeLists: A set operation returning the union (deduplicated) or concatenation (with duplicates) of two lists, depending on the
deduplicateparameter (product-specific) - differenceLists: A set operation returning the items of the first list that are not present in the second list (product-specific)
Guardrails:
distinctWithNulldoes not support the<listObject>parameter typefilterrequires the listObject parameter to be a field reference, not an inline literallistSizeon a listObject requires the list to be a field reference; a listObject cannot contain null objectsserializeListdoes not support thelistObjecttypemergeListsanddifferenceListsonly support scalar list types (string, integer, decimal, boolean, dateTime, dateTimeOnly, dateOnly, duration);listObjectis not supportedmergeLists’sdeduplicateparameter must be a literaltrue/false, not a dynamic boolean expressiondifferenceListsalways deduplicates its result; there is no option to keep duplicates
Terminology:
- Canonical name: List functions — Acronym: none — variants: collection functions, array functions
- Synonyms: “listSize” = “count list elements”; “serializeList” = “join list to string”
- Do not confuse: “distinct” (ignores nulls) ≠ “distinctWithNull” (preserves null as a distinct value)
- Do not confuse: “limit” with third parameter
true(returns first N items) ≠ “limit” withfalse(returns last N items) - Do not confuse: “intersect” (common elements between two lists) ≠ “filter” (elements matching specific key values)
- Do not confuse: “mergeLists” (combines two lists, union or concatenation) ≠ “differenceLists” (subtracts one list from another) ≠ “intersect” (common elements only)
FAQ:
- Q: How do I get the first 3 items of a list? — Use
limit(myList, 3)orlimit(myList, 3, true); the default is to return the first items. - Q: How do I get the last 3 items of a list? — Use
limit(myList, 3, false). - Q: What is the difference between
distinctanddistinctWithNull? —distinctignores null values and excludes them from the result;distinctWithNulltreats null as a distinct value and includes one null entry if any nulls are present. - Q: Can I filter a list of strings with
filter? — No,filteronly works onlistObject; for scalar lists useinordistinctfor deduplication. - Q: How do I check if a value is in a list? — Use
in(value, myList), which returns true if the value is found in the list. - Q: Can I sort a listObject by a specific attribute? — Yes, use
sort(@event{...}, "attributeName", true)where the second parameter is the attribute name and the third is the sort direction (true = ascending). - Q: How do I combine two lists and remove duplicates? — Use
mergeLists(list1, list2, true). - Q: How do I combine two lists but keep duplicate values? — Use
mergeLists(list1, list2, false). - Q: How do I find the items in one list that are not in another? — Use
differenceLists(list1, list2), which returns the items oflist1not present inlist2. - Q: What is the difference between
intersectanddifferenceLists? —intersectreturns items common to both lists;differenceListsreturns items in the first list that are absent from the second list.