Firestore查询:如何过滤文档ID?

时间:2020-09-22 09:53:54

标签: firebase

在Firestore中,我有一个集合,其中包含按时间戳标识的文档:/records/timestamp
我想使用javascript客户端API根据ID过滤文档。
如何编写查询?
我正在寻找以下内容,但找不到 id 的正确字段名称:

const query = firestore.collection(`/records`).where("id", "<", 1600766222);

1 个答案:

答案 0 :(得分:2)

使用FieldPath.documentId()可以实现此操作,但有局限性。

db.collection('CollectionName').where(firebase.firestore.FieldPath.documentId(), '<', '100').get()

但是请注意,文档ID是字符串,因此将按ID顺序包括ID为'0'或'1'的文档,而不包括ID为'2'的文档,因为'2'>'100'。

因此,如果要进行数字查询,则需要将文档ID作为文档中的数字字段编写,然后对其进行常规查询。

参考:https://stackoverflow.com/a/48467056/1212903