Ch.13 SQL 기초 — 데이터의 언어

INSERT, UPDATE, DELETE — 데이터 조작

INSERT INTO로 새 데이터를 추가할 수 있다UPDATE SET으로 기존 데이터를 수정할 수 있다DELETE FROM으로 데이터를 삭제할 수 있다

데이터를 읽기만 할 건 아니잖아?

회원 가입, 프로필 수정, 계정 삭제 — 웹 서비스의 핵심은 데이터의 생성·수정·삭제입니다.

데이터를 추가, 수정, 삭제하려면?

INSERT, UPDATE, DELETE — SQL의 데이터 조작 3총사, 이것만 알면 CRUD가 완성됩니다.


article

핵심 내용

새로운 데이터를 테이블에 추가(INSERT) 합니다

-- 한 행 추가
INSERT INTO users (name, email, age)
VALUES ('최신입', 'choi@example.com', 28);

-- 여러 행 한번에 추가
INSERT INTO users (name, email, age)
VALUES
  ('정개발', 'jung@example.com', 26),
  ('한디자', 'han@example.com', 24),
  ('오백엔', 'oh@example.com', 29);

VALUES 순서 주의! 열 이름과 값의 순서가 정확히 일치해야 합니다. (name, email, age) → VALUES ('이름', '이메일', 나이) 순서가 다르면 잘못된 데이터가 저장됩니다.

기존 데이터를 수정(UPDATE) 합니다

-- id가 1인 사용자의 나이를 26으로 변경
UPDATE users
SET age = 26
WHERE id = 1;

-- 여러 열 동시 수정
UPDATE users
SET name = '김개발', age = 27
WHERE id = 1;

WHERE 없으면 전체 수정! 가장 흔한 실수입니다. `UPDATE users SET age = 26;` → 모든 사용자의 나이가 26으로 변경! 반드시 WHERE로 대상을 특정하세요.

데이터를 테이블에서 삭제(DELETE) 합니다

-- id가 3인 사용자 삭제
DELETE FROM users
WHERE id = 3;

-- 조건에 맞는 여러 행 삭제
DELETE FROM users
WHERE age < 18;

-- ⚠️ 절대 금지: WHERE 없는 DELETE
-- DELETE FROM users;  -- 모든 데이터 삭제!

WHERE 필수! 없으면 전체 삭제! `DELETE FROM users;` → 테이블의 모든 행이 삭제됩니다. 실무에서는 삭제 전 SELECT로 먼저 확인하는 습관을 들이세요. `SELECT * FROM users WHERE id = 3;` → 확인 후 → `DELETE`

데이터를 요약·계산하는 집계 함수를 알아봅시다

-- 전체 사용자 수
SELECT COUNT(*) FROM users;

-- 나이 합계
SELECT SUM(age) FROM users;

-- 평균 나이
SELECT AVG(age) FROM users;

-- 최대/최소 나이
SELECT MAX(age), MIN(age) FROM users;

-- 별칭과 함께 사용
SELECT
  COUNT(*) AS 총인원,
  AVG(age) AS 평균나이,
  MAX(age) AS 최고나이
FROM users;

WHERE 절 없이 UPDATE를 실행하면 어떻게 되나?

DELETE FROM users; 는 테이블 자체를 삭제한다

사용자 수를 세는 함수: SELECT ___(*) FROM users;

CRUD 완전 정복!

key

핵심 용어

🔢

COUNT(*)

행의 개수를 셈

SUM(열)

숫자 열의 합계

📊

AVG(열)

숫자 열의 평균

⬆️

MAX(열)

최대값

⬇️

MIN(열)

최소값

edit_note

정리 노트

INSERT, UPDATE, DELETE — 데이터 조작 정리

DML 3대 명령

INSERT INTO
테이블에 새 행을 추가 — VALUES(값1, 값2, ...)
UPDATE SET
기존 행의 값을 수정 — 반드시 WHERE 조건과 함께
DELETE FROM
조건에 맞는 행을 삭제 — WHERE 없으면 전체 삭제 주의!

집계 함수

COUNT()
행의 개수 집계
SUM() / AVG()
숫자 컬럼의 합계 / 평균 계산
MAX() / MIN()
컬럼의 최댓값 / 최솟값 조회

UPDATE와 DELETE는 WHERE 없이 실행하면 전체 데이터에 영향 — 항상 조건을 확인하세요!

check_circle

핵심 정리

  • 1INSERT INTO 테이블 (열) VALUES (값); — 데이터 추가
  • 2UPDATE 테이블 SET 열=값 WHERE 조건; — 데이터 수정
  • 3DELETE FROM 테이블 WHERE 조건; — 데이터 삭제
  • 4UPDATE/DELETE에 WHERE 필수! 없으면 전체 적용
  • 5COUNT, SUM, AVG, MAX, MIN — 5대 집계 함수

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작