SQL

[SQLD] SQL SELECT문은 DML? DQL?

온한온 2025. 2. 27. 13:47

SQLD를 공부하면서...

지금까지는 SELECT문은 당연하게 DML이라고 생각해왔는데, DQL로 나눈다는 내용을 알게 되었다.

 

사실 아직 확실하게 알지는 못했지만

일단 SELECT를 DML으로 보고, 시험에도 DQL이 나오지 않는 이상 DML로 선택하는 게 맞는 거 같다.

 

DML (Data Manipulation Language)

데이터 조작어로 데이터베이스에 대해 데이터 검색, 등록, 삭제, 갱신 등을 하기 위한 명령어이다.

  • SELECT : 데이터 검색
  • INSERT : 데이터 입력
  • UPDATE : 데이터 수정
  • DELETE : 데이터 삭제
  • MERGE : INSERT, UPDATE, DELETE를 모두 수행하는 오라클 명령어.
    • 데이터가 없으면 INSERT, 조건을 만족하면 UPDATE 혹은 DELETE를 실행하는 형식으로 사용됨.

 

DQL (Data Query Language)

데이터 질의어(데이터 쿼리 언어)로 데이터 조회를 위한 명령어이다.

  • SELECT : 데이터 검색

 

일단은 이렇게 나눠볼 수 있는 것 같다.

SELECT문의 위치를 확실하게 나누기는 어렵지만...

 

우선은 DML, DQL에 둘 다 속한 상태로 생각하고

시험같이 답이 있어야 하는 곳에서 DQL이 있다면 SELECT를 DQL로,

아니라면 DML로 생각하는 게 편할 거 같다.

 

참고로 아주 예전 버전의 오라클 설명서이긴 하지만 여기서는 SQL 명령문 유형으로

SELECT를 DML에 정의하고 있긴 하다...

Types of SQL Statements

'SQL' 카테고리의 다른 글

[SQLD] NULL, 단일행 문자형 함수, 윈도우 함수 등 정리  (0) 2025.03.07