我当前正在使用应用程序中的搜索功能。这会引用我的Firebase数据库快照。我正在使用Firebasedatabase软件包为此。
当前我正在使用它搜索我的数据库
FirebaseDatabase.instance.reference().child('products').orderByChild('title').equalTo(searchQuery)
搜索Query变量是用于搜索数据库的使用字符串。这返回标题等于搜索的产品列表。
searchQuery = 'hello';
title1 = 'hello';
title2 = 'hello there';
目前,只有
searchQuery == title1;
searchQuery != title2;
,但我也希望将其返回
searchQuery == title2;
现在可以使用它吗?
您正在寻找contains
查询,但是Firebase没有提供。您可以通过查找equalTo
或endAt
或startAt
的值来完善您的实际查询(您也可以使用这些方法(。不过,提出三个请求将是昂贵的。
如果您的数据库不大,并且您的数据不敏感,则建议获取整个数据并进行客户端过滤器,如下所示。