logo

SQL DELETE 문

SQL DELETE 문은 테이블 구조를 그대로 유지하면서 테이블에서 특정 행을 제거하는 데 사용됩니다. 테이블 전체를 삭제하는 DROP과 다릅니다.

  • 조건에 따라 행을 제거합니다.
  • 테이블 스키마 제약 조건과 인덱스를 유지합니다.
  • 단일 행 또는 모든 행을 삭제할 수 있습니다.

예: 먼저 우리는 만들다 SQL DELETE 명령을 사용할 데모 SQL 데이터베이스 및 테이블.

의' title=

질문:



DELETE FROM Employees  
WHERE EmployeeID = 5;

산출:

삭제된 행-' loading='lazy' title=
  • 이 쿼리는 EmployeeID가 5인 Employees 테이블의 행을 삭제합니다.
  • 해당 특정 레코드만 제거됩니다. 다른 모든 행은 변경되지 않습니다.

통사론:

자바 문자열 형식화
DELETE FROM table_name   
WHERE some_condition;
  • 일부_조건: 삭제하려는 행을 필터링하는 데 사용되는 조건입니다.
  • 테이블_이름: 행을 삭제하려는 테이블의 이름입니다.

메모: WHERE 절을 사용하여 단일 또는 여러 레코드를 삭제할 수 있습니다. 생략하면 테이블의 모든 레코드가 제거됩니다.

SQL DELETE 문의 예

아래와 같이 ID 이름, 이메일, 부서 등을 포함하여 직원의 개인 세부 정보가 포함된 GFG_Employee라는 테이블을 SQL로 생성했다고 가정합니다.

테이블 생성 GFG_직원(
ID INT 기본 키
이름 VARCHAR (20)
이메일 VARCHAR (25)
부서 VARCHAR(20)
);

INSERT INTO GFG_Employees(ID 이름 이메일 부서) VALUES
(1 '제시' '[email protected]' '개발')
(2 '프라빈' '[email protected]' 'HR')
(3 '캔' '[email protected]' '판매')
(4 '리스빅' '[email protected]' 'IT')
(5 '수라즈' '[email protected]' '품질보증')
(6 '옴' '[email protected]' 'IT')
(7 '나루토' '[email protected]' '개발');

* GFG_Employee에서 선택

산출:

GFG_직원' loading='lazy' title=

예 1: 단일 레코드 삭제

테이블에서 특정 행을 삭제하는 조건과 함께 DELETE 문을 사용할 수 있습니다. 그만큼 어디 조항은 의도한 레코드만 제거되도록 보장합니다. 아래 쿼리를 사용하여 Rithvik이라는 레코드를 삭제할 수 있습니다.

질문:

DELETE FROM GFG_Employees   
WHERE NAME = 'Rithvik';

산출:

삭제된 정보' loading='lazy' title=

예 2: 여러 레코드 삭제

여러 레코드를 삭제하려면 여러 행과 일치하는 조건을 지정할 수 있습니다. 부서가 'Development'인 GFG_Employees 테이블에서 행을 삭제해 보겠습니다. 이렇게 하면 2개의 행(첫 번째 행과 일곱 번째 행)이 삭제됩니다.

질문:

크기 글꼴 라텍스
DELETE FROM GFG_Employees   
WHERE department = 'Development';

산출

부서' loading='lazy' title=

예 3: 테이블에서 모든 레코드 삭제

테이블에서 모든 레코드를 삭제해야 하는 경우 WHERE 절을 생략하거나 별표(*)가 있는 DELETE 문을 사용하여 모든 행을 표시할 수 있습니다.

질문:

DELETE FROM GFG_Employees;  
Or
DELETE * FROM GFG_Employees;

산출:

비어 있는' loading='lazy' title=

테이블의 모든 기록이 삭제되며 표시할 기록이 남지 않습니다. GFG_Employees 테이블은 비어 있게 됩니다.

DELETE 작업 롤백

DELETE 문은 DML 작업이므로 문에서 실행될 때 롤백될 수 있습니다. 실수로 기록을 삭제했거나 프로세스를 반복해야 하는 경우 다음을 사용할 수 있습니다. 롤백 명령.

질문:

문자를 문자열로 변환하는 방법
START TRANSACTION;  
DELETE FROM GFG_Employees WHERE department = 'Development';
-- If needed you can rollback the deletion
ROLLBACK;

설명: ROLLBACK 명령은 DELETE 문에 의해 변경된 내용을 실행 취소하여 트랜잭션 중에 삭제된 레코드를 효과적으로 복원합니다.

퀴즈 만들기