sql >> Databáze >  >> RDS >> Mysql

MySQL:Aktualizujte všechny řádky v tabulce odpovídající výsledkům jiného dotazu

Použití dílčích dotazů

Nejvíce podporovaná možnost

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)

Použití 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. hostitel localhost se nemůže připojit k tomuto serveru MySQL

  2. Základy SQL Serveru Příkaz ALTER TABLE

  3. Není hodnota null PHP rovna nulové hodnotě MySQL?

  4. Práce s SQL kurzory