Android Sqlite 仅更新第一行

我只需要更新特定 sql 查询命令的第一行

我的代码是:

SQLiteDatabase db = this.getWritableDatabase();
    String strSQL = "UPDATE table SET column = something WHERE  name = john AND age = 10";
    db.execSQL(strSQL);

我有大约 5 个结果,其条件相同,名称=约翰,年龄为 10

这可以更新最后一项,但我希望它仅更新 WHERE 子句的第一行结果。这怎么可能?


慕森王
浏览 204回答 3
3回答

呼如林

尝试这个:String strSQL = "UPDATE table SET column = something WHERE id IN (SELECT id FROM table WHERE name = john AND age = 10 LIMIT 1)";

UYOU

提供的id是PK,试试UPDATE table SET column = something WHERE id = (SELECT min(t2.id)             FROM table t2             WHERE t2.name = 'john' AND t2.age = 10)

萧十郎

第一:( 在您的情况下)如果您只想更新第一行,则在表中再添加一个参数。它将帮助您找到唯一的记录第二: 不要使用这样的更新查询    String strSQL = "UPDATE table SET column = something WHERE  name = john AND age = 10";
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java