在Android Java中如何获取Firestore不同文档的同名字段值
Firestore单字段查询解决方案
Firestore提供select方法实现字段投影功能,可仅拉取指定字段的数据,不会返回其他字段内容,完全符合你的需求。以下为不同常用场景的实现代码:
Web端(JavaScript 客户端SDK)
import { collection, query, select, getDocs } from "firebase/firestore"; // 替换为你自己的Firebase初始化配置引入 import { db } from "./firebaseConfig"; // 替换为你的集合名称,第二个参数为你要提取的字段名,支持传多个 const fieldQuery = query(collection(db, "你的集合名"), select("kcal")); const querySnapshot = await getDocs(fieldQuery); // 提取所有文档的kcal字段值 const kcalList = querySnapshot.docs.map(doc => doc.data().kcal);
Node.js 服务端(Admin SDK)
const admin = require("firebase-admin"); // 初始化Admin SDK步骤省略 const db = admin.firestore(); const snapshot = await db.collection("你的集合名").select("kcal").get(); const kcalList = snapshot.docs.map(doc => doc.get("kcal"));
Python 服务端(Admin SDK)
import firebase_admin from firebase_admin import firestore # 初始化Admin SDK步骤省略 db = firestore.client() doc_stream = db.collection("你的集合名").select("kcal").stream() kcal_list = [doc.to_dict()["kcal"] for doc in doc_stream]
补充说明:如果需要同时提取多个字段,只需在
select方法中传入多个字段名即可,例如select("kcal", "name", "weight")。如果需要关联获取文档ID,遍历文档时调用对应SDK的ID获取方法即可(如JS端为doc.id、Python端为doc.id)。
内容的提问来源于stack exchange,提问作者Velibor Simonovic
相关产品推荐
相关产品推荐

