是否可以更新第一行和WHERE子句。
我想:
Sqlite中的更新頂端
UPDATE TOP (1) Players SET... WHERE...
和:
UPDATE TOP 1 Players SET... WHERE
,但它似乎有SQLite中沒有頂部。 我可以使用一些替代方法嗎?
或者我做錯了什麼?
是否可以更新第一行和WHERE子句。
我想:
Sqlite中的更新頂端
UPDATE TOP (1) Players SET... WHERE...
和:
UPDATE TOP 1 Players SET... WHERE
,但它似乎有SQLite中沒有頂部。 我可以使用一些替代方法嗎?
或者我做錯了什麼?
嘗試
UPDATE Players SET... WHERE... LIMIT 1
我無法驗證的權利,但也許LIMIT
只有SELECT
報表工作。如果這樣做:
UPDATE Players SET... WHERE ID in (SELECT ID FROM Players WHERE ... LIMIT 1)
的SQLite不支持TOP N查詢,但它使用the LIMIT clause做到這一點。無論如何,這隻適用於SELECT語句,而不適用於UPDATE。如果只想更新一行,則需要使用WHERE子句過濾UPDATE。
編輯:
@RenéBeneš:看我的更新。 – 2012-04-09 14:39:25
是的,謝謝你,完美的作品。會接受這一個。 – 2012-04-09 14:44:50
依靠更新/刪除查詢中的「LIMIT」可能會造成一些難以重新創建的錯誤。我聽說人們使用LIMIT作爲性能提升,但我認爲這是不值得的。 – Matthew 2012-04-09 14:46:26