dart:从Firebase数据库快照中获取类似"%text%"搜索的SQL



我当前正在使用应用程序中的搜索功能。这会引用我的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没有提供。您可以通过查找equalToendAtstartAt的值来完善您的实际查询(您也可以使用这些方法(。不过,提出三个请求将是昂贵的。

如果您的数据库不大,并且您的数据不敏感,则建议获取整个数据并进行客户端过滤器,如下所示。

最新更新