개발블로그

[SQL] SQL 개념 본문

STUDY/SQL

[SQL] SQL 개념

devmel 2026. 7. 29. 10:13
Contents 접기
 

SQL이란

Structured Query Language 

관계형 데이터베이스 관리 시스템에 데이터 작업을 요청하는 언어

애플리케이션 또는 사용자
          ↓ SQL -- DBMS에 작업을 요청하는 언어 

           
         DBMS - 데이터베이스를 관리하는 소프트웨어 
          ↓
데이터베이스 작업 처리

작업 설명
데이터 조회 필요한 데이터를 검색
데이터 추가 새로운 행을 저장
데이터 수정 기존 데이터를 변경
데이터 삭제 저장된 데이터를 제거
구조 정의 테이블과 컬럼을 생성·변경
권한 관리 사용자의 접근 권한 설정
트랜잭션 제어 여러 작업을 확정하거나 취소

 

특징

선언적 언어 (원하는 결과가 무엇인지 표현) 

필요한 데이터의 조건을 작성하고, 실제 처리 과정은 DBMS에 맡긴다.

 

처리 과정보다 원하는 결과를 표현함

- 어떤 테이블에서

- 어떤 데이터를

- 어떤 조건으로 가져올 것인지 요청 

=> 실제 데이터를 어떻게 처리할지는  DBMS가 결정

 

cf) 일반적인 프로그래밍 언어 => 작업 과정을 직접 작성함 

  ex) 데이터를 읽는다 / 각 데이터를 반복해서 확인한다 / 조건을 비교한다 / 조건에 맞는 데이터만 결과에 넣는다

 

ex)

SELECT *
FROM users
WHERE status = 'active';

users 테이블에서 status가 active인 회원 데이터를 조회한다. 

=> 개발자는 데이터를 찾는 세부 절차까지 직접 작성하지 않는다. 

(어떤 행부터 읽을 것인가, 어떤 순서로 데이터를 확인할 것인가, 인덱스를 사용할 것인가, 테이블 전체를 읽을 것인가) 

 

종류

분류 역할 대표 명령
DDL 데이터 구조 정의 CREATE, ALTER, DROP
DML 실제 데이터 조회·변경 SELECT, INSERT, UPDATE, DELETE
DCL 사용자 권한 관리 GRANT, REVOKE
TCL 트랜잭션 제어 COMMIT, ROLLBACK