Show Menu
SUJETS×

Fonctions de tableau, de liste et de définition

Les fonctions d’offres PQL (Profil Requête Language) facilitent l’interaction avec les tableaux, les listes et les chaînes. Pour plus d'informations sur les autres fonctions PQL, consultez la présentation du langage Profil Requête.

Dans

La in fonction est utilisée pour déterminer si un élément est membre d'un tableau ou d'une liste.
Format
{VALUE} in {ARRAY}

Exemple
La requête PQL suivante définit les personnes ayant un anniversaire en mars, juin ou septembre.
person.birthMonth in [3, 6, 9]

Pas dans

La notIn fonction permet de déterminer si un élément n'est pas membre d'une baie ou d'une liste.
La fonction notIn assure également qu’aucune valeur n’est égale à null. Par conséquent, les résultats ne sont pas une négation exacte de la in fonction.
Format
{VALUE} notIn {ARRAY}

Exemple
La requête PQL suivante définit les personnes dont l’anniversaire n’est ni en mars, ni en juin, ni en septembre.
person.birthMonth notIn [3, 6, 9]

Intersectes

La intersects fonction est utilisée pour déterminer si deux baies ou listes ont au moins un membre commun.
Format
{ARRAY}.intersects({ARRAY})

Exemple
La requête PQL suivante définit les personnes dont les couleurs préférées comprennent au moins une couleur rouge, bleue ou verte.
person.favoriteColors.intersects(["red", "blue", "green"])

Intersection

La intersection fonction est utilisée pour déterminer les membres communs de deux tableaux ou listes.
Format
{ARRAY}.intersection({ARRAY})

Exemple
La requête PQL suivante définit si la personne 1 et la personne 2 ont toutes deux des couleurs préférées de rouge, de bleu et de vert.
person1.favoriteColors.intersection(person2.favoriteColors) = ["red", "blue", "green"]

Sous-ensemble de

La subsetOf fonction est utilisée pour déterminer si un tableau spécifique (tableau A) est un sous-ensemble d'un autre tableau (tableau B). En d'autres termes, tous les éléments du tableau A sont des éléments du tableau B.
Format
{ARRAY}.subsetOf({ARRAY})

Exemple
La requête PQL suivante définit les personnes qui ont visité toutes leurs villes préférées.
person.favoriteCities.subsetOf(person.visitedCities)

Paramètre supérieur à

La supersetOf fonction est utilisée pour déterminer si un tableau spécifique (tableau A) est un superset d'un autre tableau (tableau B). En d'autres termes, ce tableau A contient tous les éléments du tableau B.
Format
{ARRAY}.supersetOf({ARRAY})

Exemple
La requête PQL suivante définit les personnes qui ont mangé au moins une fois des sushis et des pizzas.
person.eatenFoods.supersetOf(["sushi", "pizza"])

Inclut

La includes fonction permet de déterminer si un tableau ou une liste contient un élément donné.
Format
{ARRAY}.includes({ITEM})

Exemple
La requête PQL suivante définit les personnes dont la couleur préférée est le rouge.
person.favoriteColors.includes("red")

Distinct

La distinct fonction est utilisée pour supprimer des valeurs de duplicata d'un tableau ou d'une liste.
Format
{ARRAY}.distinct()

Exemple
La requête PQL suivante spécifie les personnes qui ont passé des commandes dans plusieurs magasins.
person.orders.storeId.distinct().count() > 1

Regrouper par

La groupBy fonction est utilisée pour partitionner les valeurs d'un tableau ou d'une liste dans un groupe en fonction de la valeur de l'expression.
Format
{ARRAY}.groupBy({EXPRESSION)

Argument
Description
{ARRAY}
Tableau ou liste à regrouper.
{EXPRESSION}
expression qui mappe chaque élément du tableau ou de la liste renvoyé.
Exemple
La requête PQL suivante regroupe toutes les commandes dans lesquelles la commande a été placée.
orders.groupBy(storeId)

Filtrer

La filter fonction est utilisée pour filtrer un tableau ou une liste en fonction d'une expression.
Format
{ARRAY}.filter({EXPRESSION})

Argument
Description
{ARRAY}
Tableau ou liste à filtrer.
{EXPRESSION}
expression par laquelle filtrer.
Exemple
La requête PQL suivante définit toutes les personnes de 21 ans ou plus.
person.filter(age >= 21)

Carte

La map fonction est utilisée pour créer un nouveau tableau en appliquant une expression à chaque élément d'un tableau donné.
Format
array.map(expression)

Exemple
La requête PQL suivante crée un nouveau tableau de nombres et carré la valeur des nombres d’origine.
numbers.map(square)

Premier n tableau

La topN fonction est utilisée pour renvoyer les premiers éléments N d'un tableau, lorsqu'ils sont triés par ordre croissant en fonction de l'expression numérique donnée.
Format
{ARRAY}.topN({VALUE}, {AMOUNT})

Argument
Description
{ARRAY}
Tableau ou liste à trier.
{VALUE}
Propriété dans laquelle trier le tableau ou la liste.
{AMOUNT}
Nombre d’éléments à renvoyer.
Exemple
La requête PQL suivante renvoie les cinq premières commandes au prix le plus élevé.
orders.topN(price, 5)

Dernier n tableau

La bottomN fonction est utilisée pour renvoyer les derniers éléments N d'un tableau, lorsqu'ils sont triés par ordre croissant en fonction de l'expression numérique donnée.
Format
{ARRAY}.bottomN({VALUE}, {AMOUNT})

Argument
Description
{ARRAY}
Tableau ou liste à trier.
{VALUE}
Propriété dans laquelle trier le tableau ou la liste.
{AMOUNT}
Nombre d’éléments à renvoyer.
Exemple
La requête PQL suivante renvoie les cinq premières commandes ayant le prix le plus bas.
orders.bottomN(price, 5)

Premier élément

La head fonction est utilisée pour renvoyer le premier élément du tableau ou de la liste.
Format
{ARRAY}.head()

Exemple
La requête PQL suivante renvoie la première des cinq premières commandes ayant le prix le plus élevé. Vous trouverez plus d'informations sur la topN fonction dans la première section .
orders.topN(price, 5).head()

Étapes suivantes

Maintenant que vous avez pris connaissance de la baie, de la liste et des fonctions définies, vous pouvez les utiliser dans vos requêtes PQL. Pour plus d'informations sur d'autres fonctions PQL, veuillez lire la présentation de la langue de la Requête de Profil.