首页 > 解决方案 > Firestore 添加关系数据?

问题描述

我有一张桌子productslocations

可以说我location的组成:

{
   name: '...',
   address: '...',
   coordinates: '...'
}

我的product包括:

{
   name: '...',
   location: 'location id here'
}

我想products在特定区域(基于坐标)进行搜索和查找。

如果我在 products 表中只有记录ID,如何products根据坐标进行查询?location

我将 ID 值简单地存储为 Firestore 中的字符串,因为数据是通过 CSV 文件导入的。

标签: google-cloud-firestore

解决方案


Firestore 中没有链接。我的想法是您使用所需的坐标对您的位置集合进行查询。这将返回具有所需坐标的位置。

从该查询中获取位置 ID,并根据您拥有的位置字符串查询产品。

因此 Firestore 有更多限制,对于产品查询,您可以异步地为每个 id 发出一个请求,或者使用 where 语句使用运算符in并传入要匹配的 id 数组。id 数组只能是 10 个或更少的值,否则查询将失败。因此,如果超过 10 个,您将需要发出多个此类请求。


推荐阅读