일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- const
- Python
- Object Oriented Programming
- 함수
- function
- raw data
- 반복문
- 알고리즘
- programming
- 백준
- 파이썬
- 포인터
- predictive analysis
- assignment operator
- baekjoon
- 문자열
- Pre-processing
- pass by reference
- vscode
- string
- array
- Data Science
- 오블완
- Deep Learning
- pointer
- 배열
- C++
- 티스토리챌린지
- Class
- OOP
- Today
- Total
Channi Studies
[MySQL] Day 3. Update and Delete 본문
Updating and Deleting Data
지난 포스트에 이어서, 현재 우리가 가지고 있는 데이터는 다음과 같습니다.

여섯번째 행의 데이터, Plankton 데이터의 시급과 취직 날짜가 NULL 인 것을 볼 수 있습니다.
우리는 이 데이터들을 업데이트 하고 싶습니다.
이 때, 우리는 UPDATE 키워드를 사용합니다.
UPDATE 키워드에 추가적으로 SET 키워드로 업데이트할 값을 지정해주고,
WHERE 키워드로 변경할 대상 row를 특정합니다.
UPDATE employees
SET hourly_pay = 15.00
WHERE employee_id = 6;

We can also update mutiple columns at once, by separating them with commas.
(Notice hourly_pay changed)
UPDATE employees
SET hourly_pay = 11.50,
hire_date = "2023-01-07"
WHERE employee_id = 6;

당연히 거꾸로 다시 NULL을 지정하는 것도 가능합니다.
이번에는 플랑크톤의 고용 일자를 다시 NULL로 돌려보겠습니다.
UPDATE employees
SET hire_date = NULL
WHERE employee_id = 6;
SELECT * from employees;

만약 하나의 Column 값은 모두 같은 값을 지니게 하고 싶다면, WHERE 키워드를 제거하면 됩니다.
한번 원주율 값을 저장할 추가 열을 pi_value 를 만들어서 지정해보겠습니다.
ALTER TABLE employees
ADD COLUMN pi_value FLOAT;
SELECT * from employees;

자 이제 WHERE 을 제외한 UPDATE SET 키워드로 전체 pi_value 열의 전체 행을 일괄 업데이트하겠습니다.
UPDATE employees
SET pi_value = 3.141592;
SELECT * from employees;

원하던 대로 일괄 업데이트 된 것을 확인할 수 있습니다.
자, 이제 다시 pi_value 열을 drop 해주고
alter table employees
drop column pi_value;
마지막으로 특정 행을 제거하는 방법을 알아보겠습니다.
이는 역시 DELETE 키워드로 할 수 있는데, UPDATE 에서 사용한 WHERE 키워드를 동일하게 적용해 주시면 됩니다.
만일 WHERE 키워드를 생략하고 DELETE query를 실행하면 해당 테이블의 모든 데이터를 삭제하니 초기화를 원하는 것이 아니라면 꼭 WHERE로 데이터의 범위를 지정해 주어야 합니다.
우리 예시로 돌아가서 플랑크톤의 데이터를 삭제하는 것으로 글을 마치겠습니다.
DELETE from employees
WHERE last_name = "Plankton";
select * from employees;


학교 시험 기간이라서 야심차게 시작한 프로젝트를 이틀만 하고 쉬어버렸습니다.
다음 시험기간까지 열심히 공부해보겠습니다.
'SQL' 카테고리의 다른 글
[MySQL] Day 5. CURRENT_DATE() & CURRENT_TIME() (0) | 2025.03.28 |
---|---|
[MySQL] Day 4. AUTOCOMMIT, COMMIT, ROLLBACK (0) | 2025.03.26 |
[SQL] Day 2: INSERT INTO & SELECT WHERE (0) | 2025.03.15 |
[SQL] Day 1: Database and Table (0) | 2025.03.14 |
[SQL] Day 0: Setup (0) | 2025.03.14 |