[英]Android Sqlite update first row only
我只需要更新特定 sql 查詢命令的第一行
我的代碼是:
SQLiteDatabase db = this.getWritableDatabase();
String strSQL = "UPDATE table SET column = something WHERE name = john AND age = 10";
db.execSQL(strSQL);
我喜歡 5 個結果,其條件相同,name=john 和 10 歲
這可以更新最后一項,但是我希望它僅更新 WHERE 子句的第一行結果。 這怎么可能?
嘗試這個:
String strSQL = "UPDATE table SET column = something WHERE id IN (SELECT id FROM table WHERE name = john AND age = 10 LIMIT 1)";
如果 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";
這樣做
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.