MySQL에서 특정 이메일 주소를 가진 행의 값을 수정하려면 UPDATE 문과 WHERE 절을 함께 사용하면 됩니다. WHERE 절에 이메일 주소를 조건으로 지정하면 해당 행만 정확하게 업데이트할 수 있습니다. 아래에서 단계별로 예제와 함께 살펴보겠습니다.
1. 테이블 생성하기
먼저 예제에 사용할 테이블을 생성합니다. 이메일 주소를 저장할 EmailAddress 컬럼과 점수를 저장할 Score 컬럼으로 구성된 테이블입니다.
mysql> create table DemoTable
-> (
-> EmailAddress varchar(20),
-> Score int
-> );
Query OK, 0 rows affected (1.05 sec)
2. 샘플 데이터 삽입하기
INSERT 명령어를 사용해 테이블에 몇 개의 레코드를 추가합니다.
mysql> insert into DemoTable values('Chris@gmail.com',67);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values('Robert@gmail.com',57);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('David@gmail.com',98);
Query OK, 1 row affected (0.14 sec)
3. 현재 데이터 확인하기
SELECT 문으로 테이블의 모든 레코드를 조회해 보겠습니다.
mysql> select *from DemoTable;
실행 결과는 다음과 같습니다.
+------------------+-------+ | EmailAddress | Score | +------------------+-------+ | Chris@gmail.com | 67 | | Robert@gmail.com | 57 | | David@gmail.com | 98 | +------------------+-------+ 3 rows in set (0.00 sec)
4. 이메일 주소를 조건으로 값 업데이트하기
이제 핵심인 UPDATE 쿼리입니다. WHERE 절에서 이메일 주소가 'Robert@gmail.com'인 행을 찾아 해당 행의 Score 값을 89로 변경합니다.
mysql> update DemoTable
-> set Score=89
-> where EmailAddress='Robert@gmail.com';
Query OK, 1 row affected (0.25 sec)
Rows matched: 1 Changed: 1 Warnings: 0
쿼리 실행 결과 메시지를 보면 Rows matched: 1, Changed: 1로 표시되는데, 이는 조건에 일치하는 1개의 행을 찾았고 실제로 1개의 행이 변경되었음을 의미합니다.
5. 업데이트 결과 확인하기
다시 SELECT 문으로 테이블을 조회하여 변경 사항이 제대로 적용되었는지 확인합니다.
mysql> select *from DemoTable;
결과를 보면 Robert@gmail.com의 Score가 57에서 89로 성공적으로 변경된 것을 확인할 수 있습니다.
+------------------+-------+ | EmailAddress | Score | +------------------+-------+ | Chris@gmail.com | 67 | | Robert@gmail.com | 89 | | David@gmail.com | 98 | +------------------+-------+ 3 rows in set (0.00 sec)
주의사항 및 팁
- WHERE 절은 반드시 작성하세요. WHERE 절 없이 UPDATE 문을 실행하면 테이블의 모든 행이 한꺼번에 변경되므로 각별히 주의해야 합니다.
- 이메일 주소의 고유성을 보장하세요. 동일한 이메일 주소가 여러 행에 존재하면 해당하는 모든 행이 함께 업데이트됩니다. 필요하다면 이메일 컬럼에 UNIQUE 제약조건을 추가하는 것이 좋습니다.
- 대소문자 구분에 유의하세요. MySQL의 기본 collation 설정에 따라 문자열 비교 시 대소문자가 구분되지 않을 수 있으므로, 환경 설정을 미리 확인하는 것이 안전합니다.
- 중요한 데이터를 수정하기 전에는 백업을 권장합니다. 실수로 잘못된 데이터를 덮어쓰는 것을 방지할 수 있습니다.