如何在 Firebase 数据库中的字符串中进行简单搜索?

新手上路,请多包涵

我想在我的应用程序中创建一个简单的搜索,但在互联网上找不到任何关于它的信息,这比 2014 年更新。必须有更好的方法。有 startAt 和 endAt 函数,但它们不能按预期工作并且区分大小写。你们如何解决这个问题? 2016年怎么还没有这个功能?

原文由 Zigmārs Dzērve 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 609
2 个回答

就我而言,我能够通过以下方式部分实现 SQL LIKE:

 databaseReference.orderByChild('_searchLastName')
                 .startAt(queryText)
                 .endAt(queryText+"\uf8ff")

查询中使用的字符 \uf8ff 是 Unicode 范围内非常高的代码点(它是专用使用区 [PUA] 代码)。因为它在 Unicode 中的大多数常规字符之后,所以查询匹配所有以 queryText 开头的值。

这样,通过“Fre”搜索,我可以从数据库中 _searchLastName 属性中具有“Fred, Freddy, Frey”的记录。

原文由 Francesco 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题