我想查詢是從列表如何查詢給定對象列表中的對象?
比方說我有一個包含對象A,C,F和數據庫包含的對象A,B,C,d一個列表L類似的物體上, E,...,Z
如何查詢ormlite中的對象只有列表L中的對象?
編輯:的對象是含有各種字段和一個整數id字段作爲其主鍵
我想查詢是從列表如何查詢給定對象列表中的對象?
比方說我有一個包含對象A,C,F和數據庫包含的對象A,B,C,d一個列表L類似的物體上, E,...,Z
如何查詢ormlite中的對象只有列表L中的對象?
編輯:的對象是含有各種字段和一個整數id字段作爲其主鍵
如何查詢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字段將有一個索引,它是一個容易的選擇來查找。
希望這會有所幫助。
使用where in
子句
queryBuilder().where().in("field", L).query();
其中L
應List<String>
類型的自定義類。
這是否只適用於本機數據類型? –
我不確定。我總是使用它與列表。 –
我使用相同的東西..有沒有比這更優化的解決方案,在ormlite本身實現的東西? –
對不起,不過@GamatheGreat。 – Gray