簡體   English   中英

Android Sqlite 僅更新第一行

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM