sql >> データベース >  >> RDS >> Mysql

mysqlこの条件付き更新ステートメントの正しい構文は何ですか

    次のように書く必要があります:

    UPDATE tablename
    SET fieldX = CASE WHEN fieldA = 'value1' THEN 'xxx' ELSE fieldX END,
        fieldY = CASE WHEN fieldA = 'value2' THEN 'yyy' ELSE fieldY END
    WHERE fieldA IN ('value1', 'value2'); 
    

    注意: ELSEを書きました ELSEのデフォルトであるため、このように分割します NULLです CASEの条件が 式が無効であるため、NULLではなく元の値に設定されます 価値。




    1. 大きな(14 GB)MySQLダンプファイルを新しいMySQLデータベースにインポートするにはどうすればよいですか?

    2. Oracle文字列集約

    3. 削除時にカスケードしますか、それともトリガーを使用しますか?

    4. sqliteとmysqlからデータスピナーをロードします