UPDATE trong SQL




[Update trong SQL]Truy vấn UPDATE trong SQL được sử dụng để sửa đổi các bản ghi đang tồn tại trong một bảng.

Bạn có thể sử dụng mệnh đề WHERE với truy vấn UPDATE để cập nhật các hàng đã được lựa chọn, nếu không, tất cả các hàng sẽ bị tác động.

Cú pháp

Cú pháp cơ bản của truy vấn UPDATE với mệnh đề WHERE như sau:

UPDATE ten_bang
SET cot1 = giatri1, cot2 = giatri2...., cotN = giatriN
WHERE [dieu_kien];

Cú pháp cơ bản của truy vấn UPDATE với mệnh đề WHERE như sau:

Ví dụ

Bảng SINHVIEN có các bản ghi sau:

+----+---------+-----+-----------+--------+
| ID |  TEN    | TUOI|  KHOAHOC  | HOCPHI |
+----+---------+-----+-----------+---------+
|  1 | Hoang   |  21 | CNTT      | 4       |
|  2 | Viet    |  19 | DTVT      | 3.0     |
|  3 | Thanh   |  18 | KTDN      |  4      |
|  4 | Nhan    |  19 | CK        |   4.5   |
|  5 | Huong   |  20 | TCNH      |   5     |
+----+---------+-----+-----------+---------+

Ví dụ sau sẽ cập nhật KHOAHOC cho một sinh viên có ID là 4.

SQL> UPDATE SINHVIEN
SET KHOAHOC = 'TTCK'
WHERE ID = 4;

Bây giờ, bảng SINHVIEN sẽ có các bản ghi sau:

+----+---------+-----+-----------+--------+
| ID |  TEN    | TUOI|  KHOAHOC  | HOCPHI |
+----+---------+-----+-----------+---------+
|  1 | Hoang   |  21 | CNTT      | 4       |
|  2 | Viet    |  19 | DTVT      | 3.0     |
|  3 | Thanh   |  18 | KTDN      |  4      |
|  4 | Nhan    |  19 | TTCK        |   4.5   |
|  5 | Huong   |  20 | TCNH      |   5     |
+----+---------+-----+-----------+---------+

Nếu bạn muốn sửa đổi tất cả giá trị các cột là KHOAHOC và HOCPHI trong bảng này, bạn không cần sử dụng mệnh đề WHERE và khi đó truy vấn UPDATE sẽ như sau:

SQL> UPDATE SINHVIEN
SET KHOAHOC = 'CNTT', HOCPHI = 4;

Bây giờ, bảng SINHVIEN sẽ có các bản ghi sau:

+----+---------+-----+-----------+--------+
| ID |  TEN    | TUOI|  KHOAHOC  | HOCPHI |
+----+---------+-----+-----------+---------+
|  1 | Hoang   |  21 | CNTT      | 4       |
|  2 | Viet    |  19 | CNTT      | 4    |
|  3 | Thanh   |  18 | CNTT      |  4      |
|  4 | Nhan    |  19 | CNTT        |   4   |
|  5 | Huong   |  20 | CNTT      |   4     |
+----+---------+-----+-----------+---------+