1

我正在android中创建一个简单的多项选择琐事游戏。我将有三个选择,A、B 或 C。我创建了一个 SQLite 数据库,其中包含琐事问题的三个可能答案。我已经让它显示正确的答案。如何编写 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是它可以显示相同的答案两次。我想做的是让它从正确答案上方的 10 行和正确答案下方的 10 行中获取两个唯一答案。所以基本上我希望光标转到正确答案cursor.moveToFirst();,然后从正确答案上方和下方的 20 行中选择两个随机答案。谢谢你的帮助!

4

1 回答 1

1

对于随机顺序,“上方”和“下方”并没有真正的意义。

只需使用 . 抓取三个随机答案LIMIT 3

于 2012-11-12T22:39:01.987 回答