【问题标题】:Trying to query across collections in google Firestore [duplicate]尝试在 google Firestore 中跨集合查询 [重复]
【发布时间】:2019-01-26 14:15:56
【问题描述】:

我正在尝试根据另一个集合中保存的数据从一个集合中检索数据。如果我的出勤集合中的 userUID 等于我的学生集合中的 userUID,我想检索学生的姓名。这可能吗?

【问题讨论】:

  • 如果你的出勤和学生收藏有相同的userId的文档,那么你可以使用WhereEqualTo(fieldName,value)db.collection("student") .whereEqualTo("userId", "idValue").get()一样查询学生
  • 我可以将两个集合的这些查询合并到一个查询中吗?或者这怎么可能
  • 不,不可能将两个集合的查询合并到一个查询中。

标签: firebase google-cloud-firestore


【解决方案1】:

Firestore 目前无法做到这一点。 Firestore 查询仅限于单个集合中的文档。您必须执行多次获取或查询。

【讨论】:

  • 无论如何都可以在查询中进行查询,甚至尝试检索此数据并在两个集合之间建立连接。
  • 如我所说,编写多个查询来获取您需要的数据。
  • 是否可以在查询中编写一个函数来检索数据。
  • 不,您必须执行多个查询。
  • 此外,还有什么方法可以在其他查​​询中编写查询
【解决方案2】:

根据多位 Google Firebase 工程师的说法,尽管 Firestore 文档说:

如果您需要跨集合查询数据,请使用 根级集合。

https://firebase.google.com/docs/firestore/data-model?authuser=3

我建议谷歌重写他们文档的这一部分,因为这些句子从字面上推断出相反的意思。它的内容应该是:

如果您需要跨集合查询数据,则不会发生。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-26
    • 1970-01-01
    • 2019-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多