0

我目前正在编写一个应用程序,我有一个 SQLite 数据库,其中包含可交易收集卡牌游戏的数据。每张卡片都有名称、额定功率、卡片组、颜色和其他信息。我想知道的是如何编写查询语句来说明某人想要搜索一张名为 Moses 的卡片,他们可以输入名称并获取数据库中所有不同 Moses 卡片的结果,但说他们想要缩小范围,他们知道摩西是一张白卡,然后他们可以输入摩西,然后单击一个名为 White 的按钮,然后提交,然后在数据库中查询颜色列中是单词 White 的 Moses 卡然后显示结果。现在更进一步,如果他们想从国王系列中找到所有的牌,比如颜色白色和蓝色,怎么办?

我知道这是很多信息,有什么帮助吗?

4

1 回答 1

0

您需要在 dbhelper 中编写一些方法:

public Cursor fetchSearch(String find) {
    String query = "SELECT name, power, set, color FROM cards WHERE name = '" + find + "%'";
    return mDb.rawQuery(query, null);
}

public Cursor fetchSearchColor(String find, String color) {
    String query = "SELECT name, power, set, color FROM cards WHERE name = '" + find + "%' AND color = '" + color + "'";
    return mDb.rawQuery(query, null);
}

您可以调用 fetchSearch 进行普通搜索,调用 fetchSearchColor 来搜索特定颜色。从这里您可能可以弄清楚如何进行多种颜色搜索。

于 2012-05-20T00:19:33.910 回答