You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Firebase Firestore使用where查询文档子属性不生效如何解决?

问题原因

Firestore 查询为严格类型匹配,你存储的文档中value.b是字符串类型的'48',但查询时传入的比对值是数字类型的48,类型不一致导致无法命中匹配的文档。
你使用的嵌套字段点号查询方式是Firestore官方支持的标准写法,本身没有问题。

修复方案

  • 方案一:修改查询条件的比对值类型,保持和存储数据一致:
firestore()
  .collection('database_test')
  .where("value.b", "==", "48")
  .get()
  • 方案二:如果业务场景中value.b属于数值属性,调整数据写入逻辑,将value.b存储为数字类型的48,原有查询代码可保持不变。

内容的提问来源于stack exchange,提问作者rop lop fan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 18:48:04