0

以前の私のプロジェクトでは、ラジオボタンを保持し、ラジオボタン(サブジェクト)のいずれかが選択されている場合は、その特定のIDをクエリに動的に送信しました。しかし、今はラジオボタンの代わりにチェックボックスを保持する必要があります。つまり、複数選択が可能です。したがって、複数のチェックボックスが選択されている場合、データを取得するためにIDをクエリに送信するにはどうすればよいですか。

my_id=92であるmytableから*を選択します

上記の92の代わりのクエリでは、値を動的に渡します。しかし、複数のチェックボックスを選択した場合、値をクエリに動的に送信する方法と、データベーステーブルのデータを表示する方法がわかります。

誰かがこの問題に関して私を助けてくれます。前もって感謝します。

4

2 に答える 2

2

のようなものを試してSELECT * FROM mytable WHERE my_id IN (92,93,94)、括弧内に任意の数の ID を追加できます。

ここで興味深いのは、その文字列を動的に構築する方法です。私の提案は、IDのリストを繰り返し使用して文字列を作成することです。

String whereClause = "my_id IN (";

for (String id : idList) {

    if (whereClause.charAt(whereClause.length - 1) != "(") {
        whereClause += ",";
    }

    whereClause += id;
}        

whereClause += ")";

この文字列を作成したら、パラメータとして db クエリ メソッドに渡すことができますselection

于 2012-08-17T13:08:49.043 に答える
0

どうSELECT * FROM mytable WHERE my_id = 92 OR my_id = 93ですか?

次のように、Androidで提供されるAPIも使用する必要があります。

    final Cursor c = mDb.query(true, "mytable",
            new String[] { "name, description, title" }, // columns
            "myid = ? OR myid = ?", // WHERE
            new String[] { "92", "93" }, // WHERE args
            null, // GROUPBY ***
            null, // HAVING ***
            null, // ORDER BY ***
            null); // LIMIT
于 2012-08-17T12:33:13.147 に答える