Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cập nhật lương nhân viên trong MySQL với UPDATE và SET

Cập nhật dữ liệu trong MySQL: Tăng lương nhân viên

Câu lệnh UPDATE kết hợp SET cho phép sửa đổi dữ liệu hiện có. Có thể dùng biểu thức tính toán dựa trên giá trị cũ.

1. Tạo bảng và chèn dữ liệu

mysql> CREATE TABLE DemoTable (
    EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    EmployeeName VARCHAR(50),
    EmployeeSalary INT
);
mysql> INSERT INTO DemoTable (EmployeeName, EmployeeSalary) VALUES
    ('Chris', 56780), ('Robert', 45670), ('Mike', 87654), ('David', 34569);

2. Xem dữ liệu ban đầu

mysql> SELECT * FROM DemoTable;
+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
| 1          | Chris        | 56780          |
| 2          | Robert       | 45670          |
| 3          | Mike         | 87654          |
| 4          | David        | 34569          |
+------------+--------------+----------------+

3. Truy vấn: Tăng lương tất cả nhân viên 12346

mysql> UPDATE DemoTable
    SET EmployeeSalary = EmployeeSalary + 12346;

Kết quả: Query OK, 4 rows affected

4. Kiểm tra kết quả

mysql> SELECT * FROM DemoTable;
+------------+--------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary |
+------------+--------------+----------------+
| 1          | Chris        | 69126          |
| 2          | Robert       | 58016          |
| 3          | Mike         | 100000         |
| 4          | David        | 46915          |
+------------+--------------+----------------+

Các biến thể hữu ích:

  • Cập nhật có điều kiện: WHERE EmployeeSalary < 50000
  • Tăng phần trăm: SET EmployeeSalary = EmployeeSalary * 1.1 (tăng 10%)
  • Gán giá trị cố định: SET EmployeeSalary = 50000 WHERE EmployeeId = 1
  • Cập nhật nhiều cột: SET col1=val1, col2=val2

Lưu ý an toàn: Luôn chạy SELECT trước với cùng điều kiện WHERE để xem trước các hàng sẽ bị ảnh hưởng.