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

MySQL:別のクエリの結果と一致するテーブルのすべての行を更新します

    サブクエリの使用

    最も広くサポートされているオプション

    UPDATE INVOICES
       SET s_id = (SELECT cs.s_id
                     FROM CUSTOMERS_AND_SALES cs
                    WHERE cs.c_id = INVOICES.c_id),
           s_name = (SELECT cs.s_name
                       FROM CUSTOMERS_AND_SALES cs
                      WHERE cs.c_id = INVOICES.c_id)
     WHERE INVOICES.c_id IN (SELECT cs.s_id
                               FROM CUSTOMERS_AND_SALES cs)
    

    JOINの使用

    UPDATE INVOICES
      JOIN CUSTOMERS_AND_SALES cs ON cs.c_id = INVOICES.c_id
       SET s_id = cs.s_id,
           s_name = cs.s_name
    


    1. T-SQLの中括弧

    2. SQLデータベースから特定の行と列を選択します

    3. Word、Excel、PowerPointでのキーボードのみのナビゲーションの使用(パート1:リボン)

    4. sqlalchemyを使用して、リクエストごとにデータベースエンジンに動的にバインドする方法