Lệnh UPDATE trong SQL Server

Update SQL Server được dùng khá nhiều khi lập trình. Dưới đây là những điều bạn cần biết về câu lệnh update trong SQL Server.

SQL Server là kiến thức nhất định bạn nên học khi muốn phát triển sự nghiệp lập trình. Nó có rất nhiều ứng dụng trong thực tế. Học SQL Server không khó. Bạn có thể tự học theo từng bài trên Quantrimang.com. Ở bài viết này, chúng ta hãy cùng nhau tìm hiểu cách update 2 bảng trong SQL hay câu lệnh Update SQL Server được dùng như thế nào nhé!

Update trong SQL Server là gì?

Lệnh Update trong SQL Server được dùng để chỉnh sửa các bản ghi hiện có trong một bảng. Lệnh này là một phần của Data Manipulation Language (DML), vì nó chỉ chỉnh sửa dữ liệu hiện trong bảng mà không ảnh hưởng tới cấu trúc của bảng.

Để lọc bản ghi cần được chỉnh sửa, bạn có thể dùng mệnh đề WHERE với lệnh UPDATE. Dùng mệnh đề WHERE, bạn có thể cập nhật một hoặc nhiều hàng.

Lệnh UPDATE SQL sử dụng các khóa trên mỗi hàng trong khi chỉnh sửa chúng trong một bảng, và sau khi hàng được chỉnh sửa, khóa sẽ được phát hành. Vì thế, nó có thể thay đổi sang một hoặc nhiều hàng trong một truy vấn.

Cú pháp lệnh UPDATE

Cú pháp cập nhật bảng trong SQL Server

UPDATE bang
SET cot1 = bieuthuc1,
cot2 = bieuthuc2,

[WHERE dieu_kien] ;

Cú pháp cập nhật 1 bảng bằng dữ liệu từ 1 bảng khác trong SQL Server, kết hợp lệnh SELECT.

UPDATE bang1
SET cot1 = (SELECT bieuthuc1
FROM bang2
WHERE dieu_kien)
[WHERE dieu_kien];

Hoặc cú pháp khác để cập nhật một bảng bằng dữ liệu từ 1 bảng khác

UPDATE bang1
SET bang1.cot = bang2.bieuthuc1
FROM bang1
INNER JOIN bang2
ON (bang1.cot1 = bang2.cot1)
[WHERE dieu_kien];

Tên biến hoặc giá trị biến

cot1, cot2

Cột cần cập nhật.

bieuthuc1, bieuthuc2

Giá trị mới cần chỉ định cho cot1, cot2. Cot1 sẽ gán giá trị của bieuthuc1, cot2 gán giá trị của bieuthuc2…

WHERE dieu_kien

Tùy chọn. Điều kiện phải đáp ứng để bản ghi được cập nhật.

Ví dụ - cập nhật 1 cột

UPDATE nhanvien
SET ho = ‘Johnson’
WHERE nhanvien_id = 10;

Lệnh UPDATE này sẽ cập nhật họ của nhân viên trong bảng nhanvien thành Johnson nếu nhanvien_id là 10.

Ví dụ - cập nhật nhiều cột

Đây là ví dụ cập nhật nhiều hơn 1 cột chỉ với 1 lệnh UPDATE.

UPDATE nhanvien
SET ten = ‘Kyle’,
nhanvien_id = 14
WHERE ho = ‘Johnson’;

Nếu muốn cập nhật nhiều cột, chỉ cần tách các cột/giá trị bằng dấu phẩy.

Lệnh UPDATE nói trên sẽ cập nhật tên thành Kyle và nhanvien_id thành 14 nếu họ của người đó là Johnson.

Ví dụ - cập nhật bảng bằng dữ liệu từ 1 bảng khác

Đây là ví dụ cập nhật bảng bằng dữ liệu từ 1 bảng khác trong MySQL.

UPDATE nhanvien 
SET ten = (SELECT ten
FROM danhba
WHERE danhba.ho = nhanvien.ho)
WHERE nhanvien_id > 95;

Ví dụ nói trên sẽ cập nhật cho tất cả các bản ghi trong bảng nhanvien nếu nhanvien_id lớn hơn 95. Nếu họ của nhân viên ở bảng nhanvien và danhba giống nhau, thì tên trong bảng danhba sẽ được sao chép sang tên trong bảng nhanvien.

Có thể viết lại lệnh UPDATE này bằng cú pháp thứ 2 dưới đây.

UPDATE nhanvien
SET nhanvien.ten = danhba.ten
FROM nhanvien
INNER JOIN danhba
ON (nhanvien.ho = danhba.ho)
WHERE nhanvien_id > 95;

Bài trước: Lệnh INSERT trong SQL Server

Bài sau: Lệnh DELETE trong SQL Server

Thứ Năm, 21/09/2023 16:53
4,317 👨 89.028
0 Bình luận
Sắp xếp theo
    ❖ SQL Server