구조화 질의어(SQL)에서, DELETE 문은 테이블 또는 뷰에서 한개 이상의 행을 삭제한다. 하위 집합은 삭제에 대한 조건을 정의할 수 있으며, 정의하지 않으면 모든 행이 삭제된다.[1]
DELETE
문은 다음 구문을 따른다
DELETE
FROM
테이블_또는_뷰_이름 [WHERE
조건]WHERE
조건에 맞는 모든 행은 테이블에서 삭제된다. WHERE
절을 생략하면, 모든 행을 삭제한다.[2]DELETE
문은 어떤 행이라도 리턴하지 않으며, 결과 집합을 발생시키지도 않는다.
DELETE
문을 실행하는 것은 다른 테이블을 삭제하게끔 실행하는 트리거가 발생할 수 있다. 예를 들면, 두 테이블이 외래 키로 연결되어 있고 행이 참조된 테이블에서 삭제된다면, 참조 무결성이 유지되도록 참조하고 있는 테이블에도 공통적으로 삭제된다.
DELETE FROM pies WHERE flavor='Lemon Meringue';
DELETE FROM trees WHERE height < 80;
DELETE FROM mytable;
DELETE FROM mytable WHERE id IN (SELECT id FROM mytable2)
DELETE FROM mytable WHERE id IN (value1, value2, value3, value4, value5)