如何从ORMlite中选择不同的值?

San*_*ese 5 android 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();
    }
Run Code Online (Sandbox Code Playgroud)

任何帮助都很明显.

小智 1

 dataList = Utils.getDBHelper(ItemList.this).getItemDao().queryBuilder().where().in("nameid", lis).query();     
Run Code Online (Sandbox Code Playgroud)

这是我之前在应用程序中使用的代码。它正在从数据库中检索重复的值。然后我用 unique() 方法更新了它,一切开始正常工作。

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

注意:这里的“lis”是可迭代列表,其中添加了我的搜索参数。如果没有,可以使用“eq()”而不是“in()”。