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

Oracle SQL:Cập nhật một bảng với dữ liệu từ một bảng khác

Đây được gọi là bản cập nhật tương quan

UPDATE table1 t1
   SET (name, desc) = (SELECT t2.name, t2.desc
                         FROM table2 t2
                        WHERE t1.id = t2.id)
 WHERE EXISTS (
    SELECT 1
      FROM table2 t2
     WHERE t1.id = t2.id )

Giả sử kết quả kết hợp ở chế độ xem được bảo toàn bằng khóa, bạn cũng có thể

UPDATE (SELECT t1.id, 
               t1.name name1,
               t1.desc desc1,
               t2.name name2,
               t2.desc desc2
          FROM table1 t1,
               table2 t2
         WHERE t1.id = t2.id)
   SET name1 = name2,
       desc1 = desc2


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle Chèn Lựa chọn với thứ tự của

  2. Sử dụng Oracle JDeveloper 12c với Cơ sở dữ liệu Oracle 12c trên Nền tảng đám mây Oracle, Phần 1

  3. Cơ sở dữ liệu và không gian bảng, sự khác biệt là gì?

  4. Truy vấn mối quan hệ Khoá ngoại của Bảng

  5. số hàng không hiển thị bất kỳ hàng nào khi sử dụng giữa từ khóa