UPDATE – Lệnh sửa dữ liệu
Nội dung
1. Mô tả
- Lệnh UPDATE dùng để sửa dữ liệu hiện có trong bảng (Table).
- Có thể sửa nhiều dòng tại một thời điểm.
2. Cú pháp
- Thông thường (điều kiện từ 1 bảng)
UPDATE Tên_bảng
SET Cột_1 = Giá_trị_1, Cột_2 = Giá_trị_2,... Cột_n = Giá_trị_n
WHERE Điều_kiện
- Lệnh UPDATE… FROM (điều kiện kết hợp từ nhiều bảng)
UPDATE Tên_bảng
SET Tên_cột = Biểu_thức,...
FROM Tên_bảng_1
INNER|LEFT|RIGHT JOIN Tên_bảng_2 ON Biểu_thức_liên_kết
WHERE Điều_kiện_sửa_đổi
3. Ví dụ
- Mệnh đề WHERE sẽ xác định những dòng nào được sửa.
UPDATE EMPLOYEES
SET Salary = 7000, Commission_pct = NULL
WHERE Employee_id = 145
- Nếu không có mệnh đề WHERE thì tất cả các dòng trong bảng đều được sửa.
UPDATE EMPLOYEES
SET Department_id = 10
- Sửa với truy vấn con: ví dụ sửa lương của nhân viên 114 bằng lương của nhân viên 205.
UPDATE EMPLOYEES
SET Salary = (SELECT Salary FROM EMPLOYEES WHERE Employee_id = 205)
WHERE Employee_id = 114
- Lệnh UPDATE… FROM: ví dụ tăng lương $100 cho các nhân viên làm việc ở thành phố Oxford. (Tham khảo thêm mệnh đề JOIN)
UPDATE e
SET e.Salary = e.Salary + 100
FROM EMPLOYEES e
INNER JOIN DEPARTMENTS d ON e.Department_id = d.Department_id
INNER JOIN LOCATIONS l ON d.Location_id = l.Location_id
WHERE l.City = N'Oxford'
Xem thêm: lệnh thêm dữ liệu INSERT, lệnh xóa dữ liệu DELETE, lệnh xóa toàn bộ dữ liệu trong bảng TRUNCATE TABLE, lệnh trộn dữ liệu MERGE.