gpt4 book ai didi

firebase - 一个查询中按两个字段排序的 Firestore

转载 作者:行者123 更新时间:2023-12-05 06:37:33 25 4
gpt4 key购买 nike

一个多星期前我问了一个问题。 Firestore order by two fields

我得到的回复是:

“该 API 支持您想要的功能,尽管我在文档中没有看到显示它的示例。

查询词的顺序很重要。假设您有一个城市集合,感兴趣的字段是人口 (h1) 和名称 (h2)。要获取人口在 1000 到 2000 范围内的城市(按名称排序),查询将是:

citiesRef.orderBy("population").orderBy("name").startAt(1000).endAt(2000)

此查询需要一个复合索引,您可以在控制台中手动创建它。或者如那里的文档所示,系统将帮助您:"

*** 但返回的不是人口在 1000 到 2000 之间的城市(按名称排序),而是人口在 1000 之间的城市(按名称排序),然后是人口为 1001 的城市(按名称排序),然后是人口为 1002 的城市(按名称排序),依此类推到 2000 年。

我想知道是否有办法让人口在 1000 到 2000 之间的所有城市按名称排序。谢谢。

最佳答案

我认为您正在寻找关于populationwhere 子句:

citiesRef
.where("population", ">=", 1000)
.where("population","<",2000)

因为 Cloud Firestore doesn't support ordering by a different field than the supplied inequality ,您将无法直接从查询中按名称排序。相反,您需要在获取数据后对客户端进行排序。

关于firebase - 一个查询中按两个字段排序的 Firestore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47541360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com