Aller au contenu

Trier les Requêtes de Liste

Les résultats de votre requête peuvent être triés en utilisant l’argument sort. L’ordre de tri (ascendant vs descendant) est défini en spécifiant ASC ou DESC pour le nom du champ.

Dans les exemples suivants, nous avons une table appelée students, qui contient des champs et des relations comme createdAt, firstName, email.

Voici une requête où les résultats seront triés par ordre croissant de date de création.

Requête

query MyQuery1 {
students(sort: [CREATEDAT]) {
items {
id
createdAt
firstName
email
}
}
}

Réponse

{
"data": {
"students": {
"items": [
{
"id": "287cff0a-345b-4cca-9e9a-75a2161238fd",
"createdAt": "2025-12-02T05:01:31.054581Z",
"firstName": "James",
"email": "james.smith@example.com"
},
{
"id": "97fb89ac-e0ad-44f5-b671-24a1b751287c",
"createdAt": "2025-12-02T05:03:17.180675Z",
"firstName": "John",
"email": "john.williams@example.com"
},
{
"id": "429cf99f-4481-49c4-adb4-605731b20eb2",
"createdAt": "2025-12-04T14:16:53.049955Z",
"firstName": "Mary",
"email": "mary.brown@example.com"
}
]
}
}
}

Les résultats de votre requête peuvent être triés par attributs sur les tables liées, ainsi qu’en utilisant plusieurs objets de tri. Ils sont classés par priorité selon l’ordre dans lequel ils sont reçus.

Requête

query MyQuery1 {
students(
sort: [
{ firstName: ASC },
{ email: DESC }
]
) {
items {
id
firstName
email
}
}
}

Réponse

{
"data": {
"students": {
"items": [
{
"id": "287cff0a-345b-4cca-9e9a-75a2161238fd",
"firstName": "James",
"email": "james.smith@example.com"
},
{
"id": "97fb89ac-e0ad-44f5-b671-24a1b751287c",
"firstName": "John",
"email": "john.williams@example.com"
},
{
"id": "429cf99f-4481-49c4-adb4-605731b20eb2",
"firstName": "Mary",
"email": "mary.brown@example.com"
}
]
}
}
}