【发布时间】:2021-04-04 18:42:48
【问题描述】:
我在Firestore有2个收藏:
首先我有“已经加载”的用户 ID,
第二个我有所有的用户ID,
如何从在 Firestore 中进行查询的第二个元素中排除第一个元素?
目标是只获取我尚未加载的用户(可选地对结果进行分页)。
有没有使用 Firestore 实现此目的的简单方法?
编辑: 我所说的文档数量最终会变得庞大
【问题讨论】:
标签: firebase google-cloud-firestore
我在Firestore有2个收藏:
首先我有“已经加载”的用户 ID,
第二个我有所有的用户ID,
如何从在 Firestore 中进行查询的第二个元素中排除第一个元素?
目标是只获取我尚未加载的用户(可选地对结果进行分页)。
有没有使用 Firestore 实现此目的的简单方法?
编辑: 我所说的文档数量最终会变得庞大
【问题讨论】:
标签: firebase google-cloud-firestore
这在大规模使用单个查询时是不可能的。如您所述,解决这种情况的唯一方法是完全查询两个集合,然后在客户端中编写代码,使用第二组结果中的文档从第一组结果中删除文档。
事实上,在同一个查询中不可能同时涉及两个集合。没有连接。从查询中排除文档的唯一方法是在单个集合中的文档内容上使用filter。
如果集合很大并且您无法预先计算或缓存结果,那么 Firestore 可能不是满足此类要求的最佳数据库。
【讨论】: