云公司的FireStore字符串> =字符串

问题描述:

以下是在云计算公司的FireStore列表查询一个例子云公司的FireStore字符串> =字符串

citiesRef.where("state", ">=", "CA").where("state", "<=", "IN") 

是什么意思?

这是我可以做一个查询搜索子字符串的方式。例如, 我有一组用户,我的所有用户文档都有first_name和last_name。现在,作为用户,我试图通过输入部分名称和搜索来搜索其他用户。我应该可以编写一个查询来获取名称中包含该字符串的所有用户。我如何在Firestore中做到这一点?

+1

如果您有没有相互关联的两个不同的问题,请分别询问他们所以他们可以更容易地分开回答。 –

+0

对不起,我的措词。这些主题是相关的。现在我更好地理解它。 –

+0

我必须同意。我来到这里与您的第二个问题寻找答案。如果有人碰巧回答这两个问题,那很好,但是最好能提出两个不同的问题。是的,它们是相关的,但它们不是同一个问题。 – Methodician

[Google员工在这里]要回答你的第一个问题,state <= "IN"是在state属性值排序小于或等于值"IN"所有文档的查询。因此,如果状态为"IM",那么这将是真实的,但如果是"IO""IP",那么这些状态就会按照字典顺序排列。

"IN"的使用可能在这里引起混淆,它的意思是印第安纳州的缩写,但它也是许多其他数据库系统中的保留字。

要回答第二个问题,Cloud Firestore不支持任何本机“包含”,操作或其他常见字符串查询,如“startsWith”,“endsWith”,“like”等。原因是所有Cloud Firestore查询必须命中一个索引,现在我们不会以使查询速度更快的方式对文本字段进行索引。

目前,我们建议使用像Algolia第三方搜索服务提供商,我们提供这样做这里的一些指导: https://firebase.google.com/docs/firestore/solutions/search