【问题标题】:Android: Select Query SQLite for ListViewAndroid:为 ListView 选择查询 SQLite
【发布时间】:2012-01-13 12:05:42
【问题描述】:

我正在使用这种方法在 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 包含“健康”一词的项目才会显示在列表中。

它不必等于“健康”,因此名称为“健康/生物”的 PROJECTTITLE 也会出现在列表中。我怎样才能做到这一点?

【问题讨论】:

    标签: android sqlite


    【解决方案1】:

    您的查询应该如下所示:

    db.query(TABLE_NAME, new String[] {"_id", "yourColumn"},"yourColumn like " + "'%Health%'", null, null, null, null);

    【讨论】:

    • Database.Project.C_SHORTCODE},null,null,null,将第一个 null 替换为 "yourColumn like " + "'%Health%'"。 YourColumn 应该是您的项目标题栏。
    【解决方案2】:

    如果您让搜索词为 %health%,那么它应该选择所有包含健康的行。

    【讨论】:

      猜你喜欢
      • 2013-03-24
      • 1970-01-01
      • 1970-01-01
      • 2014-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多