热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Firebase查询-查找包含字符串的子项

如何解决《Firebase查询-查找包含字符串的子项》经验,为你挑选了1个好方法。

我在使用Firebase查询时遇到了一些麻烦.我想查询对象,其中对象子值包含某个字符串.到目前为止,我有一些看起来像这样的东西:

Firebase *ref = [[Firebase alloc] initWithUrl:@"https://dinosaur-facts.firebaseio.com/dinosaurs"];
[[[[ref queryOrderedByKey] queryStartingAtValue:@"b"] queryEndingAtValue:@"b~"]
    observeEventType:FEventTypeChildAdded withBlock:^(FDataSnapshot *snapshot) {
    NSLog(@"%@", snapshot.key);
}];

但是这只会给出起始值为"b"的对象.我想要包含字符串"b"的对象.我怎么做?



1> Kato..:

查询API中没有包含或模糊匹配方法,如果您已经扫描了API和查询指南,则可能已经猜到了这些方法.

不仅在SO [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] 上讨论了这个主题,但我已经多次谈到为什么要使用真正的搜索引擎,而不是尝试这种半心半意的搜索方法.

有一个原因,谷歌网站找到结果比使用内置搜索更容易,这是失败的主要组成部分.

综上所述,由于没有内置的包含,你手动执行此操作的问题的答案是设置服务器端进程,将数据加载/流入内存并手动搜索内容,最好是某种缓存.

但老实说,ElasticSearch在这里更快,更简单,更高效.由于这是一个很大的话题,我将推迟到关于这个主题的博客文章.


推荐阅读
author-avatar
he2134
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有