Android:为ListView选择Query SQLite

时间:2012-01-13 12:05:43

标签: android sqlite

我正在使用此方法在ListView上显示SQLite中的表及其内容:

listView.setAdapter(new MySimpleCursorAdapter(this, R.layout.listitems,
                managedQuery(Uri.withAppendedPath(Provider.CONTENT_URI,
                        Database.Project.NAME), new String[] { BaseColumns._ID,
                        Database.Project.C_PROJECTTITLE,
                        Database.Project.C_SMALLIMAGE, Database.Project.C_PROJECTDESCRIPTION, Database.Project.C_ORGANIZATIONTITLE, Database.Project.C_DONATIONAMOUNT, Database.Project.C_KEYWORD, Database.Project.C_PRICE, Database.Project.C_SHORTCODE}, null, null, null),
                new String[] { Database.Project.C_PROJECTTITLE,
                        Database.Project.C_SMALLIMAGE, Database.Project.C_PROJECTDESCRIPTION, Database.Project.C_ORGANIZATIONTITLE, Database.Project.C_DONATIONAMOUNT}, new int[] {
                        R.id.txt_title, R.id.image, R.id.txt_list_desc, R.id.txt_org, R.id.btn_amount}));

现在我想知道我能做到这一点:

例如,我想在其列中仅显示包含“健康”一词的Database.Project.C_PROJECTTITLE

因此,只有PROJECTTITLE包含“健康”一词的项目才会显示在列表中。

它不一定是EQUAL'Health',所以具有名称'Health / Bio'的PROJECTTITLE也出现在列表中。 我怎么能这样做?

谢谢

2 个答案:

答案 0 :(得分:1)

您的查询应该如下所示:

db.query(TABLE_NAME,new String [] {“_ id”,“yourColumn”},“yourColumn like”+“'%Health%'”,null,null,null,null);

答案 1 :(得分:0)

如果您让搜索字词为%health%,则应选择包含运行状况的所有行。