Mục lục
Mệnh đề DELETE trong SQL được sử dụng để xóa các bảng ghi tồn tại trong một bảng của database. Chúng ta có thể xóa một hoặc nhiều bản ghi phụ thuộc vào điều kiện được chỉ định trong mệnh đề WHERE.
Sử dụng DELETE trong SQL
Cú pháp
DELETE FROM table_name WHERE some_condition; table_name: tên của bảng sẽ bị xóa các bảng ghi some_condition: điều kiện xóa, nếu bảng ghi nào thỏa mãn điều kiện này thì sẽ bị xóa
Ví dụ cho bảng Student được mô tả như sau
Xóa 1 dòng
Ví dụ 1: Xóa các hàng có NAME = ‘Ram’. Thao tác này sẽ chỉ xóa hàng đầu tiên
DELETE FROM Student WHERE NAME = 'Ram';
Truy vấn trên sẽ chỉ xóa hàng đầu tiên và bảng Student bây giờ sẽ trông giống như,
ROLL_NO | NAME | ADDRESS | PHONE | Age |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
4 | SURESH | Delhi | XXXXXXXXXX | 18 |
3 | SUJIT | ROHTAK | XXXXXXXXXX | 20 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
Xóa nhiều dòng
Ví dụ xóa các hàng khỏi bảng Sinh viên trong đó Tuổi là 20. Thao tác này sẽ xóa 2 hàng (hàng thứ ba và hàng thứ năm).
DELETE FROM Student WHERE Age = 20;
Truy vấn trên sẽ xóa hai dòng (dòng thứ ba và dòng thứ năm) và Student bây giờ sẽ trông giống như:
ROLL_NO | NAME | ADDRESS | PHONE | Age |
1 | Ram | Delhi | XXXXXXXXXX | 18 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
4 | SURESH | Delhi | XXXXXXXXXX | 18 |
2 | RAMESH | GURGAON | XXXXXXXXXX | 18 |
Xóa tất cả dữ liệu từ 1 bảng
Có hai truy vấn để thực hiện việc này như hình dưới đây
query1: "DELETE FROM Student"; query2: "DELETE * FROM Student";
Tất cả các bản ghi trong bảng sẽ bị xóa, không còn bản ghi nào để hiển thị. Bảng Sinh viên sẽ trở nên trống rỗng!