0

CASEステートメントを使用したいMySQLの行があります。しかし、私はそれを正しく行っているとは思いません。フラグが特定の値に設定されているかどうかを確認してから、設定内容に基づいてそのフラグを更新する必要があります。これが私のMySQLです:

$sql = 'UPDATE table SET flag = CASE WHEN flag = 2 THEN 0 ELSE flag = 3'

それは有効なSQLですか?フラグが2の値に設定されている場合は、0に設定し、それ以外の場合は3に設定します。SQLを修正してこれを行うにはどうすればよいですか。

4

1 に答える 1

1

現在のクエリは非常に近く、コードは次のようになります。

UPDATE table 
SET flag = CASE WHEN flag = 2 THEN 0 ELSE 3 END

これにより、がに等しい場合にflag列が更新され、に等しくない場合、値はに更新されます。0flag223

于 2013-03-18T19:39:13.840 に答える