web-dev-qa-db-fra.com

Tri par ordre décroissant dans la base de données Firebase

Il y a cette liste de livres dans la base de données Firebase Realtime:

[
  {
    title: "Don't Make Me Think",
    upvotes: 110
  },
  {
    title: "The Mythical Man Month",
    upvotes: 111
  },
  {
    title: "Code Complete 2",
    upvotes: 112
  }
]

Par défaut, la requête ci-dessous renvoie cette liste dans l'ordre ASC:

firebase.database().ref('books').orderByChild('upvotes')

Comment puis-je les interroger et les commander par upvotes DESC à la place?

12
hyang123

Malheureusement, Firebase ne permet pas de retourner par ordre décroissant. Je viens généralement de renverser l'ordre des résultats retournés côté client.

Si votre requête de données est trop volumineuse pour trier le côté client, vous pouvez le faire

firebase.database().ref('books').orderByChild('ups').limitToLast(2)

puis inverser les résultats à partir de là. La documentation peut être vue ici

19
Scott Buckstaff