SQL/개념
UPDATE 명령어
데이터분석가 이채은
2024. 12. 21. 19:16
UPDATE 명령어란?
"UPDATE"는 테이블의 데이터를 수정할 때 사용하는 명령어입니다. 특정 조건에 맞는 하나 이상의 행(row)의 값을 업데이트할 수 있습니다.
UPDATE 구문
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
- table_name: 데이터를 수정할 테이블의 이름.
- SET column = value: 수정할 컬럼과 새로운 값.
- WHERE condition: 업데이트할 행을 지정하는 조건. 조건이 없으면 테이블의 모든 행이 업데이트됩니다.
UPDATE 특징
- SET 절:
- 수정할 컬럼과 새로운 값을 지정합니다.
- 여러 개의 컬럼을 한 번에 업데이트할 수 있습니다.
- WHERE 절:
- 조건을 명시하지 않으면 테이블의 모든 행이 업데이트됩니다.
- 항상 WHERE 절을 신중히 작성해야 불필요한 데이터 손상을 방지할 수 있습니다.
- NULL 값 업데이트:
- 컬럼에 NULL 값을 명시적으로 삽입 가능.
- 조건부 업데이트:
- 서브쿼리를 사용하거나 계산된 값을 이용해 조건부로 데이터를 업데이트할 수 있습니다.
예제
1. 단일 컬럼 업데이트
문제: user_id = 2인 사용자의 도시를 'Chicago'로 변경.
UPDATE Users
SET city = 'Chicago'
WHERE user_id = 2;
2. 여러 컬럼 업데이트
문제: user_id = 3인 사용자의 이름과 나이를 변경.
UPDATE Users
SET name = 'David', age = 29
WHERE user_id = 3;
3. 조건 없는 업데이트
문제: 모든 사용자의 도시를 'Unknown'으로 변경.
UPDATE Users
SET city = 'Unknown';
4. 계산식 사용
문제: 모든 사용자의 나이를 1살 증가.
UPDATE Users
SET age = age + 1;
5. 서브쿼리 사용
문제: 다른 테이블의 값을 이용해 데이터 업데이트.
UPDATE Users
SET city = (
SELECT location
FROM UserDetails
WHERE Users.user_id = UserDetails.user_id
);