Comme je l’ai dit dans le guide «Cloud Firestore Data Model», «chaque document est identifié par un nom». Est-il possible d'interroger une collection par cet identifiant de document (qui est le nom ou l'identifiant)?
Par exemple, les documents de la collection "Things" ont des ID: 0, 1, 2, etc.:
Est-il possible d'interroger des documents dont l'identifiant est inférieur à 100?
Vous pouvez interroger par documentId en utilisant la fonction sentinel FieldPath.documentId()
, par exemple:
const querySnap = collection.where(firebase.firestore.FieldPath.documentId(), '<', '100').get();
Sachez cependant que les identifiants de document sont strings et qu’ils incluront donc les documents avec l’identifiant «0» ou «1», mais pas «2», car «2»> «100» lexicographiquement.
Par conséquent, si vous souhaitez une requête numérique, vous devez écrire l'ID du document sous forme de champ numérique dans le document, puis effectuer une requête normale sur celui-ci.
Vous pouvez également essayer de "remplir" vos identifiants pour que "1" devienne "001", "2" devienne "002", etc. Si vous n'avez aucune idée du nombre total d'éléments, cela peut ne pas sembler pratique, mais votre requête devrait fonctionner.