如何查询给定对象列表中的对象?

时间:2016-01-08 07:24:00

标签: java android ormlite

我想查询与列表中的对象类似的对象

假设我有一个包含对象A,C,F的列表L,数据库包含对象A,B,C,D,E,...,Z

如何仅在ormlite中查询列表L?

中的对象

编辑:对象是包含各种字段和整数id字段作为其主键的自定义类

2 个答案:

答案 0 :(得分:1)

使用where in子句

queryBuilder().where().in("field", L).query();

其中L的类型应为List<String>

答案 1 :(得分:1)

  

如何仅在ormlite中查询列表L?

中的对象

如果我理解这个问题,查找对象集合的最佳方法是创建这些对象的ID集合,然后使用WHERE IN子句。

 List<Integer> idList = new ArrayList<Integer>();
 for (MyClass instance : L) {
    idList.add(L.getId());
 }
 List<MyClass> results = dao.queryBuilder().where().in("id", idList).query();

您可以选择使用此指标从MyClass查找任何字段,但ID字段会有一个索引,因此这是一个简单的选择。

希望这有帮助。