firebase 使用Flutter从多个集合中搜索文档

q3qa4bjr  于 2022-12-24  发布在  Flutter
关注(0)|答案(2)|浏览(132)

有人能告诉我在Firebase中是否可以同时搜索多个集合吗?我需要做的是在bio_data中搜索2009年和2010年集合中的数据(将来需要添加更多集合),并从其中一个集合中提取文档。
或者,是否有办法获取文档中集合的名称列表也没关系

zsohkypk

zsohkypk1#

Firestore没有跨集合的服务器端联接或投影的概念。每个查询或文档读取只能从单个集合获取数据,或者从与集合组查询同名的所有集合获取数据。如果需要从两个集合加载数据,则至少需要两次读取。
为了更好地理解,我强烈建议观看Get to know Cloud Firestore播放列表。

nfg76nw0

nfg76nw02#

米歇尔的答案是正确的。
此外,我建议您更改数据模型:您可以拥有一个唯一的子集合,并将year字段添加到该唯一集合中的文档中,而不是每年拥有一个子集合。
这样就很容易按年份查询:一年、使用in运算符(最多10个相等(==)子句)的几年或所有年份。
使用Collection Group查询,您甚至可以查询所有学生的所有数据。

相关问题