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

MySQL-複数の値とWHEREINを更新します

    caseをお探しですか ステートメント?

    update files
        set name = (case when id = 1 then 'untitled'
                         when id = 2 then 'untitled2'
                         when id = 3 then 'untitled3'
                         when id = 4 then 'untitled4'
                    end)
        where id IN (1, 2, 3, 4);
    

    MySQLでは、joinを使用してこれを行うこともできます :

    update files f join
           (select 1 as id, 'untitled' as newname union all
            select 2, 'untitled2' union all
            select 3, 'untitled3' union all
            select 4, 'untitled4'
           ) n
           on f.id = n.id
        f.name = new.newname;
    

    値が多い場合は、値を個別に使用してテーブルを作成してから、更新を行うことができます。



    1. 英語以外の文字を保存し、「?????」を取得しました-MySQL文字セットの問題

    2. pymysqlをドライバーとして使用してDjangoを設定するにはどうすればよいですか?

    3. pgAdminでER図を作成する

    4. MySQLで列の値を一意に保つにはどうすればよいですか?