Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm thế nào để cập nhật hai bảng trong một câu lệnh?

Giả sử mọi id đều xuất hiện trong cả hai bảng (lý tưởng là chỉ một lần):

update tmpList inner join table1 using (id) inner join table2 using (id)
    set table1.ts = tmpList.ts_value, table2.ts=tmpList.ts_value;

Cập nhật:chỉ cần sử dụng các phép nối bên trái thay vì các phép nối bên trong làm cho điều này hoạt động ngay cả đối với các id chỉ nằm trong một bảng - mệnh đề thiết lập không thể áp dụng dường như chỉ bị bỏ qua; Rõ ràng là tôi nên thử nó sớm hơn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CHỌN * TỪ nhiều bảng. MySQL

  2. Cách tìm nạp trường từ kết quả truy vấn MySQL trong bash

  3. SQLite INSERT - TRÊN CẬP NHẬT KHÓA DUPLICATE (UPSERT)

  4. PHP / MySQL - Lưu trữ dữ liệu mảng dưới dạng JSON, thực tế không tốt?

  5. Lặp lại các sự kiện lịch và một số phép toán cuối cùng