SQlite查询通过传递CheckBox选定的项

时间:2016-04-27 08:28:45

标签: android sqlite checkbox android-recyclerview

我已使用CheckBox填充 RecyclerView 。当我点击" 申请"按钮,我已经获得了所有单击的复选框值( CATEGORY )。我需要通过在SQLite中传递此类别来获取相关数据。

我通过只选择一个类别来完成它。但我需要从DataBase中获取所选类别的相关数据。

来自图片,

我需要从SQlite数据库中获取Bakery,Bowl,Box的相关数据。

为了只获取一个选定的项目,我使用了以下查询:

public Cursor getProductDetail(String strCategoryID) {
    return db.query(DbHelper.MY_PRODUCT_TABLE, MY_PRODUCTLIST_FIELDS,
            DbHelper.JSON_CATEGORY_ID + "='" + strCategoryID+ "'", null, null,
            null, null);
}

enter image description here

怎么做?请帮助我。

1 个答案:

答案 0 :(得分:0)

通过以下方式完成任务:

public Cursor getCategoryFilter(ArrayList<String> categoryFilterId) {

    String abc = "";

    for (int i = 0; i < categoryFilterId.size(); i++) {
        if (abc.equals(""))
            abc += DbHelper.JSON_CATEGORY_ID + "='" + categoryFilterId.get(i) + "'";
        else
            abc += " OR " + DbHelper.JSON_CATEGORY_ID + "='" + categoryFilterId.get(i) + "'";
    }

    Cursor cur = db.rawQuery("SELECT * FROM " + DbHelper.MY_PRODUCT_TABLE + " WHERE " + abc, null);
    return cur;
}