MySQL에서 StudentId를 기준으로 테이블 업데이트하기
MySQL에서 UPDATE 문과 WHERE 절을 함께 사용하면 특정 조건에 맞는 레코드만 선택적으로 수정할 수 있습니다. 이번 글에서는 StudentId(학생 ID) 값을 기준으로 테이블의 데이터를 업데이트하는 방법을 테이블 생성부터 결과 확인까지 단계별로 살펴보겠습니다.
1단계: 테이블 생성
먼저 예제에 사용할 테이블을 생성합니다. StudentId는 기본 키(primary key)로 설정하여 각 학생을 고유하게 식별할 수 있도록 합니다.
mysql> create table DemoTable633 (
StudentId char(2) not null primary key,
StudentName varchar(100)
);
Query OK, 0 rows affected (1.06 sec)
2단계: 데이터 삽입
INSERT 명령어를 사용해 몇 개의 샘플 레코드를 추가합니다.
mysql> insert into DemoTable633 values('10','Chris');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable633 values('20','Sam');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable633 values('30','David');
Query OK, 1 row affected (0.17 sec)3단계: 데이터 조회
SELECT 문으로 테이블의 모든 레코드를 확인합니다.
mysql> select *from DemoTable633;
실행 결과는 다음과 같습니다.
+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 10 | Chris |
| 20 | Sam |
| 30 | David |
+-----------+-------------+
3 rows in set (0.00 sec)
4단계: UPDATE 문으로 데이터 수정
이제 UPDATE 문과 WHERE 절을 사용해 StudentId가 '20'인 레코드의 StudentName을 'Bob'으로 변경합니다. WHERE 절을 생략하면 테이블의 모든 행이 수정되므로, 반드시 조건을 명확히 지정해야 합니다.
mysql> update DemoTable633 set StudentName='Bob' where StudentId='20';
Query OK, 1 row affected (0.13 sec)
Rows matched: 1 Changed: 1 Warnings: 0
5단계: 변경 결과 확인
다시 SELECT 문을 실행해 업데이트가 정상적으로 적용되었는지 확인합니다.
mysql> select *from DemoTable633;
StudentId '20'의 이름이 'Sam'에서 'Bob'으로 변경된 것을 확인할 수 있습니다.
+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 10 | Chris |
| 20 | Bob |
| 30 | David |
+-----------+-------------+
3 rows in set (0.00 sec)
핵심 정리: MySQL에서 특정 레코드를 수정하려면 UPDATE ... SET ... WHERE 구문을 사용합니다. WHERE 절에 기본 키처럼 고유한 식별자를 지정하면 원하는 행만 안전하고 정확하게 업데이트할 수 있습니다.