2016-06-14 9 views
0

私はRealm Javaのドキュメントを読んでいて、 SQLの "IN"節のようなものを見つけることができませんでした。現在、ループを使用して結果を1つずつ表示していますが、そのようにしたくありません。句IN Realm Java

私はあなたの助けに感謝します!

+1

INは現在サポートされていませんが、こちらで追跡している問題があります:https://github.com/realm/realm-java/issues/841今のところ、ソリューションはループ内でクエリを作成しています。 –

+0

本当に簡単です。http://stackoverflow.com/a/32068221/2413303 – EpicPandaForce

答えて

2

レルムは、いくつかの時間のためにin句をサポートしますが、い3.1.3まで正式に文書化されていなかった。これは、文字列、数値フィールド、日付、およびバイナリデータと共に使用するために機能します。ストリングスと

使用例:あなたはより多くの情報のために...

realm.where(Person.class) 
    .in("name", new String[]{"Jill"}, Case.INSENSITIVE) 
    .findAll(); 

参照https://realm.io/docs/java/latest/#filteringケースを無視することができます

realm.where(Person.class) 
    .in("name", new String[]{"Jill", "William", "Trillian"}) 
    .findAll(); 

または必要に応じて。

0

残念ながら、「IN()の支援レルムバージョン1.1.0までが、ここでいくつかの作業は、「IN()」の周りにはありません

RealmQuery<YourObject> query = realm.where(YourObject.class); 
for (String id : ids) { 
    query.or().equalTo("yourField", id); 
} 
RealmResults<YourObject> results = query.findAll();