通过标签获取文档

时间:2020-07-05 13:31:45

标签: android firebase kotlin google-cloud-firestore logical-and

我一直在使用Firestore来构建Android应用,但我遇到了下一个限制,就是我不知道如何处理它。

我需要通过存储在数组字段中的标签来检索文档。但是,每个查询只能有一个 whereArrayContains 。我应该如何通过多个标签获取文档?

您能想到任何明智的解决方案吗?

1 个答案:

答案 0 :(得分:1)

查询中只能有一个whereArrayContainsAny条件,但是最多可以有10个whereArrayContains条件。

摘自query limitations上的文档:

  • Cloud Firestore仅提供对逻辑OR 查询的有限支持。 inarray-contains-any运算符在单个字段上支持最多10个相等(OR)或==条件的逻辑array-contains。对于其他情况,请为每个OR条件创建一个单独的查询,然后将查询结果合并到您的应用中。
  • 每个查询只能使用一个inarray-contains-any子句。您不能在同一查询中同时使用inarray-contains-any