Categories SQL

Câu lệnh DELETE trong SQL

Câu lệnh DELETE được sử dụng để xoá các hàng trong một bảng.

Cú pháp của SQL DELETE:

DELETE FROM ten_bang
WHERE mot_so_cot=mot_so_gia_tri;

Lưu ý mệnh đề WHERE trong câu lệnh SQL DELETE 

Mệnh đề WHERE chỉ định bản ghi hoặc các bản ghi phải được xoá. Nếu bạn bỏ qua mệnh đề WHERE, tất cả các bản ghi sẽ bị xoá!


Cơ sở dữ liệu Demo

Trong khoá này chúng ta sẽ sử dụng bảng cơ sở dữ liệu mẫu Northwind được nhiều người biết đến.

Dưới đây là một lựa chọn từ bảng “Customers”:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

Ví dụ về SQL DELETE

Giả sử chúng ta muốn xoá khách hàng “Alfreds Futterkiste” từ bảng “Customers”.

Chúng ta sử dụng câu lệnh SQL sau:

Ví dụ:

DELETE FROM Customers
WHERE CustomerName='Alfreds Futterkiste' AND ContactName='Maria Anders';

Bảng “Customers” giờ sẽ trông giống như thế này:

CustomerID CustomerName ContactName Address City PostalCode Country
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

Xoá tất cả dữ liệu

Bạn có thể xoá tất cả các hàng trong một bảng mà không xoá bảng. Điều này có nghĩa là cấu trúc bảng, các thuộc tính và các chỉ số sẽ vẫn còn nguyên:

DELETE FROM table_name;

hoặc

DELETE * FROM table_name;

Note: Phải cẩn thận khi muốn xoá các bản ghi. Bạn không thể undo (kiểu Ctrl + Z) câu lệnh này đâu! Vì vậy trong thực tế với các dữ liệu người ta hiếm khi xoá mà thường thêm một trường để đánh dấu nó có cần dùng hay không và giúp lấy lại dữ liệu khi cần thiết phải xem xét.

Back to Top