Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 EmployeeId를 기준으로 특정 레코드 삭제하는 방법

MySQL에서 DELETE 문과 WHERE 절을 함께 사용하면 특정 조건에 맞는 레코드만 선택적으로 삭제할 수 있습니다. 이 글에서는 EmployeeId(직원 ID)를 기준으로 테이블에서 원하는 레코드 하나를 삭제하는 전체 과정을 단계별로 살펴보겠습니다.

1. 테이블 생성하기

먼저 실습에 사용할 테이블을 생성합니다. EmployeeId와 EmployeeName 두 개의 컬럼으로 구성된 간단한 직원 테이블입니다.

mysql> create table DemoTable615 (EmployeeId varchar(100),EmployeeName varchar(100));
Query OK, 0 rows affected (0.62 sec)

2. 샘플 데이터 삽입하기

INSERT 명령어를 사용해 테이블에 직원 정보를 몇 건 입력합니다.

mysql> insert into DemoTable615 values('EMP-101','Adam');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable615 values('EMP-1001','David');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable615 values('EMP-1002','Chris');
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable615 values('EMP-1003','Robert');
Query OK, 1 row affected (0.21 sec)

3. 전체 레코드 조회하기

SELECT 문으로 테이블에 저장된 모든 레코드를 확인합니다.

mysql> select *from DemoTable615;

실행 결과는 다음과 같습니다.

+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
| EMP-101    | Adam         |
| EMP-1001   | David        |
| EMP-1002   | Chris        |
| EMP-1003   | Robert       |
+------------+--------------+
4 rows in set (0.00 sec)

현재 총 4개의 레코드가 저장되어 있습니다.

4. DELETE 문으로 특정 레코드 삭제하기

이제 WHERE 절에서 EmployeeId가 'EMP-1002'인 레코드를 지정하여 삭제합니다.

mysql> delete from DemoTable615 where EmployeeId='EMP-1002';
Query OK, 1 row affected (0.13 sec)

쿼리가 정상적으로 실행되어 1개의 행이 삭제되었습니다.

5. 삭제 결과 확인하기

다시 SELECT 문을 실행해 테이블의 현재 상태를 확인합니다.

mysql> select *from DemoTable615;

실행 결과는 다음과 같습니다.

+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
| EMP-101    | Adam         |
| EMP-1001   | David        |
| EMP-1003   | Robert       |
+------------+--------------+
3 rows in set (0.00 sec)

'EMP-1002'(Chris)에 해당하는 레코드가 성공적으로 삭제되고, 나머지 3개의 레코드만 남아 있는 것을 확인할 수 있습니다.

핵심 정리

MySQL에서 특정 레코드를 삭제하려면 DELETE FROM 테이블명 WHERE 조건; 형식의 구문을 사용합니다. WHERE 절을 생략하면 테이블의 모든 레코드가 삭제되므로, 반드시 삭제 대상을 정확히 지정하는 조건을 포함해야 합니다. 또한 중요한 데이터를 다룰 때는 삭제 전 SELECT 문으로 대상 레코드를 미리 확인하는 습관을 들이는 것이 안전합니다.