Mysql
 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)

Използване на JOINs

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL дата или PHP час?

  2. Не мога да вляза с създаден потребител в mysql

  3. MySQL JOIN и COUNT в единична заявка

  4. Google Cloud Dataflow, дефиниран от потребителя MySQL източник

  5. Запазване на данни плюс индексни данни в паметта - InnoDB срещу MyISAM