DELETE: xoá hàng theo điều kiện (DELETE FROM t WHERE ...), có thể xoá một phần. Là DML, ghi log từng hàng, chạy trong transaction (rollback được), kích hoạt trigger, chịu ràng buộc FK. Xoá nhiều hàng thì chậm và để lại dead tuple (cần VACUUM ở Postgres). Không reset bộ đếm sequence.TRUNCATE: xoá toàn bộ hàng của bảng cực nhanh bằng cách bỏ luôn vùng lưu trữ, không quét từng hàng. Là DDL; trong PostgreSQL vẫn transaction-safe (rollback được) nhưng lấy khoá mạnh; không kích hoạt trigger hàng; có thểRESTART IDENTITYđể reset sequence. Không dùng đượcWHERE.DROP: xoá cả bảng — dữ liệu + cấu trúc (cột, index, ràng buộc) khỏi schema. Bảng không còn tồn tại.
Tóm tắt: DELETE = xoá có chọn lọc; TRUNCATE = làm rỗng nhanh cả bảng; DROP = xoá hẳn bảng.