最初の行とWHERE句を更新することは可能ですか?
私が試した:
SqliteのUPDATE TOP
UPDATE TOP (1) Players SET... WHERE...
と:
UPDATE TOP 1 Players SET... WHERE
をしかし、sqliteのにはTOPがないようです。 代替手段を使用できますか?
何か間違っていますか?
最初の行とWHERE句を更新することは可能ですか?
私が試した:
SqliteのUPDATE TOP
UPDATE TOP (1) Players SET... WHERE...
と:
UPDATE TOP 1 Players SET... WHERE
をしかし、sqliteのにはTOPがないようです。 代替手段を使用できますか?
何か間違っていますか?
は、私が今確認できない
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を使用しています。いずれにせよ、それはUPDATEではなくSELECTステートメントに対するものです。 1行だけを更新する場合は、WHERE句を使用してUPDATEをフィルタ処理する必要があります。
編集:私は修正
立って、それがthe UPDATE statement does support the LIMIT clauseを表示されます。
@RenéBeneš:私の更新を参照してください。 –
はい、ありがとう、完璧に動作します。これを受け入れます。 –
更新/削除クエリで 'LIMIT'を使用すると、バグを再作成するのが難しくなります。パフォーマンス向上のために人々が「LIMIT」を使用していると聞いていますが、それは面倒なことではないと思います。 – Matthew