📅  最后修改于: 2023-12-03 15:38:15.650000             🧑  作者: Mango
Firestore 是一种非关系型文档数据库,它是 Google Cloud 平台的一部分。Firestore 适用于 Web、移动和服务器端开发,它支持实时数据同步、事务处理等高度实用的功能。
在 Firestore 中进行查询非常简单,您只需要创建一个查询,然后使用该查询来提取有关该集合中特定文档的数据。
Firestore 中的基本查询包括以下步骤:
const admin = require('firebase-admin');
admin.initializeApp();
const db = admin.firestore();
const collectionRef = db.collection('collection_name');
const query = collectionRef.where('field_name', '==', 'field_value');
其中,field_name
表示要查询的字段名,field_value
表示要查询的字段值。
query.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(doc.id, ' => ', doc.data());
});
})
.catch((error) => {
console.log('Error getting documents: ', error);
});
这段代码将执行查询,然后循环迭代查询结果中的每个文档,并将其 ID 和数据打印到控制台上。
在 Firestore 中,您可以使用多个查询条件创建复杂的查询。例如,您可以使用 where
、orderBy
、limit
、startAfter
等函数来创建查询。
下面是一个使用 where
、orderBy
、limit
和 startAfter
函数创建的复杂查询的示例:
const query = collectionRef
.where('field1', '==', 'value1')
.where('field2', '>', 'value2')
.orderBy('field3')
.limit(10)
.startAfter(documentSnapshot);
其中,field1
、field2
、field3
分别表示查询中的三个字段,value1
、value2
分别表示两个查询条件的值。orderBy
函数用于对查询结果进行排序,limit
函数用于设置查询结果的最大数量。startAfter
函数用于指定查询结果从哪个文档开始读取(这里的 documentSnapshot
表示文档的快照)。
Firestore 提供了一个简单易用的查询接口,能够满足大多数应用程序的数据查询需求。无论您是 Web 开发人员、移动应用程序开发人员还是后端开发人员,Firestore 都可以为您提供出色的数据库服务。