lko9911_ 2025. 12. 5. 14:05

데이터 분석, 백엔드 개발, 머신러닝까지 데이터가 필요한 거의 모든 분야에서 SQL은 기본 도구입니다.

 

이번 글에서는 SQL이 무엇인지, 왜 중요한지, 그리고 실제로 어떻게 사용하는지 가장 중요한 부분만 깔끔하게 정리하겠습니다.

 


 

SQL이란 무엇인가?

SQL(Structured Query Language)
→ 관계형 데이터베이스(RDBMS)에서 데이터를 조회, 추가, 수정, 삭제할 때 사용하는 언어.

대표적으로 사용되는 DBMS는 다음과 같습니다:

  • MySQL
  • PostgreSQL
  • Oracle
  • MS SQL Server
  • SQLite

SQL은 어디에서든 거의 동일하게 사용되기 때문에 한 번 배우면 평생 써먹을 수 있는 기술입니다. 저는 컴퓨터활용능력 1급을 준비할 때와 오라클을 배울 때 사용했지만 이전에 설명했던 superbase 또한 SQL문을 사용할 수 있습니다.

 

https://whitecode2718.tistory.com/141

 

[데이터베이스 관리 소프트웨어 / 사이트] Superbase

사이트 : https://supabase.com/ Supabase | The Postgres Development Platform.Build production-grade applications with a Postgres database, Authentication, instant APIs, Realtime, Functions, Storage and Vector embeddings. Start for free.supabase.com깃허

whitecode2718.tistory.com

 


 

SQL 문법의 4가지 큰 분류

1) DDL (Data Definition Language) — 구조 정의

테이블/DB의 구조를 만들고 수정하는 문법.

  • CREATE : 생성
  • ALTER : 변경
  • DROP : 삭제

✔ 예시

CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), age INT );

 


2) DML (Data Manipulation Language) — 데이터 조작

데이터를 넣고, 수정하고, 제거하는 문법.

  • INSERT
  • UPDATE
  • DELETE

✔ 예시

INSERT INTO users (id, name, age) VALUES (1, 'Alice', 25);

3) DQL (Data Query Language) — 데이터 조회

데이터를 가져오는 데 사용.

  • SELECT

✔ 예시

 
SELECT name, age FROM users WHERE age > 20;

 


 

4) DCL (Data Control Language) — 권한 관리

  • GRANT
  • REVOKE

 


 

가장 많이 쓰는 SQL 문법 빠르게 정리

SELECT 기본 구조


SELECT 컬럼명 FROM 테이블명 WHERE 조건 GROUP BY 그룹기준 HAVING 그룹조건 ORDER BY 정렬기준;
정렬하기


SELECT * FROM users ORDER BY age DESC;
그룹화(집계 함수)


SELECT age, COUNT(*) FROM users GROUP BY age;
JOIN (테이블 연결)


SELECT u.name, o.product FROM users u JOIN orders o ON u.id = o.user_id;
JOIN은 종류가 많지만 가장 많이 쓰는 건 INNER JOIN입니다.

실전 예제: 회원 테이블에서 30세 이상 주문한 사람 찾기


SELECT u.name, o.product, o.price FROM users u JOIN orders o ON u.id = o.user_id WHERE u.age >= 30;

 


SQL을 잘 다루기 위한 팁

  • SELECT는 차근차근 조건을 좁혀가면서 작성하기
  • 조인 조건(ON)을 잘못 쓰면 데이터 폭발 → 주의!
  • WHERE vs HAVING 차이 기억하기
    • WHERE: 그룹화 전 필터링
    • HAVING: GROUP BY 이후 필터링
  • 인덱스를 이해하면 성능 10배 좋아짐

 


결론

SQL은 처음 보면 복잡해 보이지만 규칙이 단순하고 일관성이 있어요. 위 문법만 확실히 이해해도 웬만한 데이터 분석, 서버 개발은 모두 가능합니다.