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

How to query for objects that are in a given list of objects?

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

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

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

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

使用where in子句

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

其中 L 应为 List<String>.

类型

How do I query for objects in ormlite only the objects inside the list 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 字段将有一个索引,因此这是一个简单的选择。

希望对您有所帮助。