作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如何在 Firebase 数据库中实现类似于 SQL 查询的字符串搜索:
SELECT select_column from table_name where search_column LIKE '%search_word%'
最佳答案
Firebase 本身不支持文本搜索。您可以通过查询实现的最接近结果是使用此 hack 的部分字符串匹配:
FirebaseDatabase.getInstance().getReference(table_name).orderByChild(select_column).startAt(search_word).endAt(search_word + "~");
~
字符 has the highest ASCII value任何可打印字符,因此查询结果是 select_column
以 search_word
开头的所有情况。
如果您需要更高级的搜索或匹配条件,则必须使用或编写全文搜索解决方案。 ElasticSearch在 Firebase 中很受欢迎。 Flashlight是一个 Node.js 模块,直接在数据库中合并两者。 (请注意,现在可以将 Flashlight 部署到 Firebase Functions 而不是推荐的 Heroku 配置。)
关于android - 如何在 Firebase 数据库中搜索字段的通配符字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43049285/
我是一名优秀的程序员,十分优秀!