Firestore 是 Google Firebase 提供的一种 NoSQL 数据库,用于存储和同步数据。它提供了灵活的数据模型和强大的查询功能。Query 类是 Firestore 中用于构建查询对象的工具,可以用来从数据库中检索数据。
Firestore 中的 Query 主要有以下几种类型:
Query 类常用于以下场景:
假设我们有一个集合 users
,每个文档包含一个子集合 posts
,我们希望获取所有 posts
子集合不为空的用户文档。
const firebase = require('firebase/app');
require('firebase/firestore');
// 初始化 Firebase
const firebaseConfig = {
// 你的 Firebase 配置
};
firebase.initializeApp(firebaseConfig);
const db = firebase.firestore();
// 查询非空子集合
db.collection('users')
.where('posts', '>=', 1)
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(`${doc.id} => ${JSON.stringify(doc.data())}`);
});
})
.catch((error) => {
console.error('Error fetching documents: ', error);
});
where
方法来过滤 posts
子集合不为空的文档。这里假设 posts
是一个子集合的引用,我们通过 >= 1
来确保子集合不为空。get
方法执行查询,并处理返回的结果。posts
不是一个直接的子集合引用,而是嵌套在其他字段中,需要调整查询条件。如果你在使用腾讯云的相关产品,可以参考腾讯云 Firestore 的文档和示例代码:
领取专属 10元无门槛券
手把手带您无忧上云