2012-04-12 90 views

回答

3

,无需了解SQLite的语法太多的细节,我猜你的子查询ISN记录格式不正确。

尝试

SELECT id, no, name, lastname FROM mytable WHERE 
     id = (SELECT min(ID) FROM mytable WHERE no = 0) 

SELECT id, no, name, lastname FROM mytable WHERE 
     id = (SELECT min(ID) FROM mytable) AND no = 0 

取决于你的解释是什么(但它听起来就像是第一个)。首先会以最小id返回行与还的0 no,但第二个查询将返回最低id然后为0的

+0

+1 no用它来选择行 - 但是,你可能想添加一个解释,说明两个陈述之间的区别是什么,以便进一步澄清。 :) – Tim 2012-04-12 02:35:09

+0

谢谢,我做了编辑(希望没有进一步混淆)。我也在我的本地机器上的sqlite3中检查过它,它似乎是正确的。 – ravuya 2012-04-12 02:41:28

+0

感谢您的回复,我试过那一个,光标cursor = db.rawQuery(“SELECT id,no,name,lastname FROM mytable WHERE id =(SELECT min(ID)FROM mytable WHERE no = 0);”,null) ;但是,我仍然有一个错误消息..... android.database.CursorIndexOutOfBoundsException:请求索引-1,大小为1 – 2012-04-12 02:47:58

相关问题