在Firestore中,可以通过指定集合的名称来执行查询。以下是一个示例代码,演示如何按照数组名称进行Firestore查询:
const firestore = firebase.firestore();
// 假设有一个名为“users”的集合,其中每个文档都有一个名为“names”的数组字段
// 查询包含特定名称的文档
firestore.collection("users").where("names", "array-contains", "Alice")
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(doc.id, " => ", doc.data());
});
})
.catch((error) => {
console.log("Error getting documents: ", error);
});
// 查询包含多个名称的文档
firestore.collection("users").where("names", "array-contains-any", ["Alice", "Bob"])
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(doc.id, " => ", doc.data());
});
})
.catch((error) => {
console.log("Error getting documents: ", error);
});
在上面的示例中,我们使用where
方法来指定查询条件,其中第一个参数是要查询的字段名,“array-contains”是查询操作符,最后一个参数是要匹配的值。如果要查询包含多个名称的文档,可以使用“array-contains-any”操作符,并提供一个包含要匹配的值的数组。
请注意,这是一个基本示例,实际上可能需要根据您的数据模型和需求进行适当的调整。
上一篇:按照数组键的值排序 PHP