2012-11-12 47 views
1

我在android中创建了一个简单的多选琐事游戏。我将有三种选择,A,B或C.我创建了一个SQLite数据库,其中包含对琐事问题的三种可能答案。我已经得到它来显示正确的答案。我如何编写SQL以便从指定范围中选择两个随机唯一答案?此代码:在Android中从SQLite表中的特定范围中抓取两个随机行

// ---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行的上方和下方正确答案的两个随机答案。谢谢你的帮助!

+0

2随机=>顺序随机限2 ... – njzk2

回答

1

随着随机顺序,“上方”和“下方”并不真正有意义。

只需使用LIMIT 3即可获得三个随机答案。

+0

你说得对,这作品!谢谢。 – kirktoon1882

相关问题