1

私はアンドロイドで単純な複数選択トリビアゲームを作成しています。A、B、または C の 3 つの選択肢があります。トリビアの質問に対する 3 つの可能な回答を含む SQLite データベースを作成しました。私はすでに正しい答えを表示するようにしています。指定した範囲から 2 つのランダムな一意の回答を選択するように SQL を作成するにはどうすればよいですか? このコード:

    // ---Grabs RANDOM Event ---
    public String getRandomEvent() {
    Cursor cursor = this.db.query("thetable Order BY RANDOM() LIMIT 1", 
            new String[] { KEY_EVENT }, null, null, null, null, null);
        String result = "";

        for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()){
            result = result
            + cursor.getString(0);
        }

        return result;

    }

// --- END Grabs Event ---

テーブル全体からランダムに回答を取得します。また、このコードでは、具体的thetable Order BY RANDOM() LIMIT 1には同じ回答を 2 回表示することが可能です。やりたいことは、正解の上10行と正解の下10行から2つの一意の回答を取得することです。cursor.moveToFirst();ということで、基本的にはカーソルを正解に移動させて、正解の上下20行からランダムに2つ選んでもらいたいと思います。ご協力いただきありがとうございます!

4

1 に答える 1

1

ランダムな順序では、「上」と「下」は実際には意味がありません。

を使用して、3つのランダムな回答を取得するだけLIMIT 3です。

于 2012-11-12T22:39:01.987 に答える