0

データ型がtinyintである列col_nameのテーブルがあり、0または1しか格納できません。次に、更新クエリを実行して、col_name値が0を含む場合は0から1に変更し、そうでない場合はその逆にします。別のアイデアを提案しますか?私の現在のクエリは機能していませんが、エラーはありません

UPDATE table SET col_name=case when col_name=0 then col_name=1 else col_name=0 end
4

4 に答える 4

2
UPDATE the_table 
SET col_name = 1 - col_name
WHERE 1=1
    ;
于 2012-06-10T13:41:47.967 に答える
1

これを試して:

UPDATE table 
SET col_name = 
    case when col_name = 0 
         then 1  
         else  0 
    end
于 2012-06-10T10:23:20.670 に答える
0
UPDATE table SET col_name=case when col_name=0 then 1 else 0 end

あなたもすることができます

UPDATE table SET CASE col_name WHEN 0 THEN 1 ELSE 0 END CASE

番号を指定するだけです

ケースステートメントリファレンス

于 2012-06-10T10:21:28.103 に答える
0

使用してみてください

update updation
set digits = decode(digits, 1, 0, 0, 1, digits)

ここで、更新はテーブルの名前であり、数字は列の名前です。

于 2012-10-10T11:58:58.683 に答える