Ngôn Ngữ SQL - UPDATE JOIN
Có thể bạn quan tâm
Chúng ta sẽ cập nhật một bảng bằng cách sử dụng một bảng khác dùng điều kiện JOIN.
Ví dụ về một bảng khách hàng. Tôi đã cập nhật bảng khách hàng có chứa thông tin khách hàng mới nhất từ một hệ thống nguồn khác. Tôi muốn cập nhật bảng khách hàng với dữ liệu mới nhất. Trong trường hợp như vậy, tôi sẽ thực hiện nối giữa bảng mục tiêu và bảng nguồn bằng cách sử dụng phép nối trên ID khách hàng.
Xem cú pháp của truy vấn SQL UPDATE với câu lệnh JOIN:
UPDATE customer_table INNER JOIN Customer_table ON customer_table.rel_cust_name = customer_table.cust_id SET customer_table.rel_cust_name = customer_table.cust_nameCách sử dụng nhiều bảng trong câu lệnh SQL UPDATE với JOIN.
Chúng ta có hai bảng, bảng 1 và bảng 2.
Tạo table1
CREATE TABLE table1 (column1 INT, column2 INT, column3 VARCHAR (100)) INSERT INTO table1 (col1, col2, col3) SELECT 1, 11, 'FIRST' UNION ALL SELECT 11,12, 'SECOND' UNION ALL SELECT 21, 13, 'THIRD' UNION ALL SELECT 31, 14, 'FOURTH'Tạo table2
CREATE TABLE table2 (column1 INT, column2 INT, column3 VARCHAR (100)) INSERT INTO table2 (col1, col2, col3) SELECT 1, 21, 'TWO-ONE' UNION ALL SELECT 11, 22, 'TWO-TWO' UNION ALL SELECT 21, 23, 'TWO-THREE' UNION ALL SELECT 31, 24, 'TWO-FOUR'Xem dữ liệu trong 2 bảng.
SELECT * FROM table_1 SELECT * FROM table_2| Col 1 | Col 2 | Col 3 | |
|---|---|---|---|
| 1 | 1 | 11 | First |
| 2 | 11 | 12 | Second |
| 3 | 21 | 13 | Third |
| 4 | 31 | 14 | Fourth |
| Col 1 | Col 2 | Col 3 | |
|---|---|---|---|
| 1 | 1 | 21 | Two-One |
| 2 | 11 | 22 | Two-Two |
| 3 | 21 | 23 | Two-Three |
| 4 | 31 | 24 | Two-Four |
Chúng ta có bảng 2 có hai hàng trong đó Col 1 là 21 và 31. Chúng ta muốn cập nhật giá trị từ bảng 2 lên bảng 1 cho các hàng trong đó Col 1 là 21 và 31.
Chúng ta cũng chỉ muốn cập nhật giá trị của Col 2 và Col 3.
Cách dễ nhất và phổ biến nhất là sử dụng mệnh đề nối trong câu lệnh cập nhật và sử dụng nhiều bảng trong câu lệnh cập nhật.
UPDATE table 1 SET Col 2 = t2.Col2, Col 3 = t2.Col3 FROM table1 t1 INNER JOIN table 2 t2 ON t1.Col1 = t2.col1 WHERE t1.Col1 IN (21,31)SELECT FROM table 1
SELECT FROM table 2
| Col 1 | Col 2 | Col 3 | |
|---|---|---|---|
| 1 | 1 | 11 | First |
| 2 | 11 | 12 | Second |
| 3 | 21 | 23 | Two-Three |
| 4 | 31 | 24 | Two-Four |
| Col 1 | Col 2 | Col 3 | |
|---|---|---|---|
| 1 | 1 | 21 | First |
| 2 | 11 | 22 | Second |
| 3 | 21 | 23 | Two-Three |
| 4 | 31 | 24 | Two-Four |
Từ khóa » Câu Lệnh Update Nhiều Bảng Trong Sql
-
Lệnh UPDATE Trong SQL Server
-
Lệnh UPDATE Trong SQL
-
Câu Lệnh UPDATE Chỉnh Sửa Dữ Liệu Bảng Trong SQL
-
Mệnh đề UPDATE Cập Nhật Dữ Liệu SQL
-
Chi Tiết Bài Học 02. Lệnh UPDATE Trong SQL - Vimentor
-
UPDATE Trong SQL Server
-
Câu Lệnh UPDATE Trong SQL - Học Sql Cơ Bản đến Nâng Cao - VietTuts
-
Cập Nhật SQL Từ Bảng Này Sang Bảng Khác Dựa Trên đối Sánh ID?
-
UPDATE - Lệnh Sửa Dữ Liệu - SQL & Database
-
Lệnh Update Trong SQL
-
Lệnh Update Trong SQL Server
-
Cập Nhật Dữ Liệu Với Update Trong SQL - Deft Blog