私はアンドロイドで単純な複数選択トリビアゲームを作成しています。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つ選んでもらいたいと思います。ご協力いただきありがとうございます!