Realm Java上有一个“ and”子句吗?

马洛斯·达马塞诺(Marlos Damasceno)

我目前正在使用Android的Realm版本87.1,但未找到任何and子句,just或or子句。

这是我的问题:

我有一个表Products和一个AutoCompleteTextView,用户可以在其中搜索其产品,同时一些建议也会在列表中下拉。如下图。

具有自动完成功能的应用

假设“产品”具有以下值:

{ "Product 1", "Product 2", "Product 3", "Product 4", "Product 5" }

这些只是这个问题的简单名称。

我要实现的目标是,当用户键入“产品5”时,建议是“产品5”。这将使用户可以轻松地找到他的产品,而不用键入产品的所有名称。

因此,使用此模板来过滤AutoCompleteTextView https://github.com/realm/realm/realm-java/issues/646的数据,在performRealmFiltering方法中,我尝试了以下方法:

RealmQuery realmQuery = RealmResults<Products>.where();
String[] split = String.valueOf(constraint).split(" ");
int i = 1;
for(String part : split) {
    if(split.length == i) {
        realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE);
    }
    else
    {
        realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE).or();
    }
    i++;
}
return realmQuery.findAll();

显然,这没有正确过滤数据并返回所有Product,因为or或应该是and

因此,我的问题是:Realm for Java中有一个and子句?还是另一个与and相同的子句,甚至是实现此过滤查询的另一种方式?

谢谢你的帮助!

马洛斯·达马塞诺(Marlos Damasceno)

好吧,我找到了一种可行的解决方法。

RealmQuery realmQuery = RealmResults<Products>.where();
String[] split = String.valueOf(constraint).split(" ");
for(String part : split) {
    realmQuery = realmQuery.contains("ProductDescription", part, Case.INSENSITIVE);
}
return realmQuery.findAll();

我只是继续替换相同的查询。

但是,我还不知道为什么会这样,所以如果有人知道为什么,我会很高兴听到。

最好的祝福

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Realm Architecture有任何可用的资源吗?

Oracle PL SQL 函数没有 INTO 子句,但它实际上有一个 SELECT INTO

SQL连接两个表,其中一个表上有一个where子句

在mat-paginator的最后一个或第一个按钮上有一个EventListener吗?

一个类上有很多方法会增加该类对象的开销吗?

在Prestashop上有一个“模板路径提示”(例如Magento)吗?

打字稿上有一个“ Object.values()”吗?

您可以在一个表上有多个选择状态,然后将它们加入吗?

我可以在btrfs上有一个交换文件吗?

可以将Realm与Angular 2一起使用吗?

一个select语句中带有一个where子句的多个链接服务器,可能吗?

蜂巢中有sql WITH子句等效吗?

可以在一个表上有2个FK,这些FK指向不同的表,并且其中仅一个会被使用吗?

我可以在Wordpress服务器上有另一个可公开访问的目录吗?

在另一个Realm对象中存储一个Realm对象数组(Swift)

Cypher /我应该使用WITH子句将值传递给下一个MATCH吗?

你能在不使用任何“with”子句的情况下编写一个查询吗

您可以在火柴臂中放置另一个火柴子句吗?

一个Java文件可以有多个类吗?

Java Android Realm包含

使用FROM子句而不是JOIN子句联接表是同一件事吗?

将回调附加到作为一次触发的全局事件的promise的概念上有一个名字吗?(例如$(document).ready())

您的WHEN子句中可以有多个评估吗?

在 from 子句中可以有两个子查询吗?

Java 8 Streams API HAVING子句在GroupingBy中等效吗?

Realm 数据库保存了什么?只有变量或函数吗?

我可以使用具有公共属性的Realm + Parceler(不带getter / setter)吗?

我可以在 Realm Swift 中拥有异构集合吗?

我只能在Application中调用一次Realm.getInstance()吗?