예제 1에서 삭제할 행을 결정하는 데 사용하는 기준은 매우 간단합니다. 우리는 또한 더 복잡한 조건을 사용할 수 있습니다. 다음은 하위 쿼리를 조건으로 사용하는 예제입니다. Myflix에 대해 MySQL WorkBench에서 위의 스크립트를 실행하면 데이터베이스 테이블에서 ID 18이 있는 동영상이 삭제됩니다. 삭제 FROM 명령은 외래 키 또는 기타 제약 조건을 위반하는 데이터 행을 삭제할 수 없습니다. 예를 들어 직원 ID 192와 모든 직원의 종속 개인을 제거하려면 다음과 같이 두 개의 DELETE 문을 실행해야 합니다. 예를 들어 다음 문은 IN 연산자(ID)가 100, 101 또는 102인 직원의 부양가족(dependents)을 포함합니다. 이제 멤버 테이블에서 데이터를 업데이트하는 실용적인 예제를 살펴보겠습니다. 회원 의 회원 번호 1과 2에 데이터 레코드에 대한 다음 업데이트가 있다고 가정 해 봅시다. DELETE 문을 실행하면 다른 테이블에서 삭제를 일으킬 수 있는 트리거가 실행될 수 있습니다. 예를 들어 두 테이블이 외래 키로 연결되고 참조된 테이블의 행이 삭제되는 경우 참조 무결성을 유지하기 위해 참조 테이블의 행도 삭제해야 하는 것이 일반적입니다. 삭제 FROM 명령에서 WHERE 절을 제외하면 테이블에서 모든 행이 삭제됩니다.

대부분의 경우, 이것은 우리가 하고자 하는 것이 아닙니다. 이를 방지하기 위해 데이터베이스 관리에서 선택한 행이 테이블에서 제거하려는 행인지 확인하기 위해 항상 먼저 해당 SELECT 문을 실행하는 것이 좋습니다. 이 작업은 “DELETE”를 “SELECT *”로 대체하여 수행할 수 있습니다. delete 명령의 기본 구문은 아래와 같습니다. 위의 스크립트를 실행하여 영화 테이블에서 ID20 및 21이 있는 동영상을 삭제합니다. 대부분의 데이터베이스 관리 시스템을 사용하면 외래 키 제약 조건을 만들 수 있으므로 테이블에서 행을 삭제하면 해당 행도 관련 테이블이 자동으로 제거됩니다. 이렇게 하면 데이터의 무결성이 보장됩니다. 이 경우 두 테이블에서 행을 삭제하려면 첫 번째 DELETE 문을 실행하기만 하면 됩니다.

사람과 주소를 나열하는 간단한 데이터베이스가 있다고 가정합니다. 두 명 이상이 특정 주소에 거주할 수 있으며 한 사람이 두 개 이상의 주소에서 살 수 있습니다(이는 다대다 관계의 예입니다). 데이터베이스에는 세 개의 테이블, 사람, 주소 및 pa만 있으며, 다음 데이터와 함께 : FROM 문 삭제를 사용하는 방법에 대한 두 가지 예는 다음과 같습니다. “고객” 테이블에서 고객 “Alfreds Futterkiste”를 삭제한다고 가정합니다. DELETE 문은 테이블의 기존 레코드를 삭제하는 데 사용됩니다. 일반적으로 DELETE 문은 SELECT 문으로 설정된 결과 집합을 반환하지 않습니다. 그러나 삭제된 행 수를 반환합니다. SQL DELETE 명령은 데이터베이스 테이블에서 더 이상 필요하지 않은 행을 삭제하는 데 사용됩니다. 테이블에서 전체 행을 삭제합니다. 삭제 명령은 데이터베이스에서 일시적 또는 사용되지 않는 데이터를 삭제하는 데 유용합니다. DELETE 명령은 단일 쿼리의 테이블에서 두 개 이상의 행을 삭제할 수 있습니다.

이는 데이터베이스 테이블에서 많은 수의 행을 제거할 때 장점이 있음을 증명합니다. 논리적으로 종속 종속 은 직원을 참조하지 않고 존재할 수 없습니다. 즉, 직원을 삭제할 때 부양가족도 삭제해야 합니다. 삭제하려는 영화 목록이 있다고 가정 해 봅시다. IN. DELETE는 행만 삭제하는 경우와 함께 WHERE 절을 사용할 수 있습니다. 테이블을 완전히 삭제하기 위해 DROP 명령을 사용할 수 있습니다. 행이 삭제되면 복구할 수 없습니다. 따라서 데이터베이스에서 데이터를 삭제하기 전에 데이터베이스 백업을 하는 것이 좋습니다.