3

最初の行を WHERE 句で更新することは可能ですか。
私は試した:

UPDATE TOP (1) Players SET... WHERE...

と:

UPDATE TOP 1 Players SET... WHERE

しかし、sqliteにはTOPがないようです。代替手段を使用できますか?
それとも私は何か間違ったことをしていますか?

4

2 に答える 2

6

試す

UPDATE Players SET... WHERE... LIMIT 1

今は確認できませんが、おそらくステートメントLIMITでのみ機能します。SELECTその場合は、次のようにします。

UPDATE Players SET... WHERE ID in (SELECT ID FROM Players WHERE ... LIMIT 1)
于 2012-04-09T14:33:39.983 に答える
0

SQLite は TOP N クエリをサポートしていますが、これを実現するために LIMIT 句を使用しています。いずれにせよ、これは SELECT ステートメントのみであり、UPDATE ではありません。1 行だけを更新する場合は、WHERE 句を使用して UPDATE をフィルター処理する必要があります。

編集:

UPDATE ステートメントは LIMIT 句をサポートしているようです。

于 2012-04-09T14:37:28.337 に答える