2013-10-03 15 views
5

データベースから別の値を取得したい。現在私はORMliteを使用しています。私は次のコードを試しました。しかし、私は照会しているときから、私は繰り返し値を得ています。誰かが私が間違っていた箇所を指摘できましたか?以下のサンプルコードを投稿していますORMliteから別の値を選択する方法は?

smsDao = databaseHelper.getSmsDao(); 
    QueryBuilder<SMSObject, Object> queryBuilder = smsDao.queryBuilder(); 
    queryBuilder.distinct().selectColumns("timestamp"); 

    try { 
     preparedQuery = queryBuilder.prepare(); 
    } catch (SQLException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

    try { 
     smsObject = smsDao.query(preparedQuery); 
    } catch (SQLException e1) { 
     // TODO Auto-generated catch block 
     e1.printStackTrace(); 
    } 

助けが必要です。

+0

同じ正確な問題がある - ソリューションを手に入れましたか? – rOrlig

答えて

1
dataList = Utils.getDBHelper(ItemList.this).getItemDao().queryBuilder().where().in("nameid", lis).query();  

これは私のアプリで以前使用したコードです。データベースから重複した値を取得していました。その後、distinct()メソッドで更新し、すべてが正常に動作するようになりました。

dataList = Utils.getDBHelper(ItemList.this).getItemDao().queryBuilder().distinct().where().in("nameid", lis).query(); 

注:ここで 'lis'は検索パラメータが追加される反復可能なリストです。あなたが持っていなければ、 'in()'の代わりに 'eq()'を使うことができます。

関連する問題