05. SQL - 2

PearLineZero
|2025. 4. 30. 20:20

✅ 데이터 조작 언어의 개념

데이터 정의 언어로 정의된 데이터베이스 내의 데이터에 대해 여러 연산을 수행하기 위한 명령어의 집합

  • 사용자에게 데이터베이스에 저장된 데이터를 처리할 수 있게 하는 일체의 도구 제공
  • 정의된 테이블 등에 레코드를 삽입 , 수정 , 삭제 및 검색하는데 사용되는 SQL 명령어들의 집합

데이터 조작 언어는 실행 즉시 반영되는 영구적 변경을 위한 명령어의 집합이 아니며 복구가 가능

 

 

✅ 명령어의 종류

CRUD를 위한 SQL 명령어의 종류

- INSERT : 테이블 스키마에 적합한 레코드를 삽입

- UPDATE: 테이블에서 조건을 만족하는 특정 레코드의 컬럼값을 수정

- DELETE: 테이블에 조건을 만족하는 특정 레코드를 삭제

- SELECT : 조건을 만족하는 레코드를 테이블에서 검

 

 

✅ INSER -1

테이블에 새로운 레코드를 삽입

- 모든 컬럼 또는 부분 컬럼에 대한 컬럼값을 입력

- NotNull 제약조건이 있는 컬럼은 반드시 컬럼값 입력

- 문자와 날짜 값은 따옴표 처리

INSERT INTO 테이블이름 VALUES(값1.. 값2,,, 값n)

 

 

 

✅ INSER -2

테이블에서 검색의 결과를 새로운 레코드로 삽입 시 사용 가능

INSERT INTO 테이블이름, (컬럼),컬럼2_ . 컬럼,,)
	SELECT 컬럼, 철럼 컬럼n FROM 테이블이름2
	WHERE 검색조건

 

 

 

✅ UPDATE 명령어

조건을 만족하는 레코드의 특정 컬럼값을 수정

UPDATE 테이블이름
	SET 컬럼1=값1 L, 컬럼2=값, , 컬럼,=값]
	[WHERE 조건]

 

 

✅ DELETE 문의 사용

조건에 일치하는 레코드 집합을 테이블에서 삭제할 때 사용하는 명령어

DELETE FROM 테이블 이름 
	[WHERE 조건]

📌 WHERE 절 확인

WHERE절이 없는 경우 UPDATE및 DELETE문은 전체 테이블 대상으로 실행

 

 

✅ SELECT 

- 한 개의 이상의 테이블에서 주어진 조건에 만족하는 레코드를 출력하는 명령문

- 관계 대수의 셀렉션, 프로젝션, 조인, 카티션 프로덕트 연산자의 기능을 모두 포함하는 명령문

  • 필수적인 SELECT 절과 부가적인 목적으로 사용하는 절을 혼합하여 검색 기능 구체화

📌  구문형식

SELECT [DISTINCT] 컬럼1, 컬럼2, ..., 컬럼N
FROM 테이블1
    [INNER JOIN | OUTER JOIN] 테이블2
        ON 조인조건1
    [INNER JOIN | OUTER JOIN] 테이블3
        ON 조인조건2
    ... -- 필요한 만큼 JOIN 추가
WHERE 조건식
    [AND | OR 추가 조건식 ...]
    [AND 컬럼 IN (서브쿼리)]
GROUP BY 컬럼1, 컬럼2, ...
    [HAVING 조건]
ORDER BY 컬럼1 [ASC | DESC], 컬럼2 [ASC | DESC], ...
;

 

-  SELECT 절: 결과에 포함되는 컬럼을 지정

- FROM 절: 질의를 적용할 테이블을 지정

- ON 절: 조인 조건을 지정

- WHERE 절: 검색 대상 레코드의 조건을 지정

- GROUP BY 절: 레코드를 그룹화하기 위한 그룹 조건을 지정

- HAVING 절: GROUP BY 절이 적용된 결과에 대한 조건을 지정

- ORDER BY 절: 검색 결과의 정렬 기준을 지정

 

 

 단순 SELECT문

레코드를 제한하지 않고 전체 테이블 검색 (where 절이 없고 DISTINCT키워드를 통해 중복 제거)

SELECT[DISTINCT] 컬럼1..컬럼2..
	FROM 테이블
    
SELECT * FROM 테이블

 

 

 조건 SELECT문

산술연산식, 함수 등을 사용하여 표현한 조건을 WHERE 절에 기술하여 조건을 만족하는 레코드만 선택적으로 검색하는 SELECT문

- 산술연산자

- 비교연산자

- 논리연산자

WHERE 절은 UPDATE, DELETE 문 등 조건을 기술하여 선택적으로 레코드에 적용하는 명령문에서 동일하게 사용

 

 

 조건 표현 연산자

산술연산자

- 컬럼값 또는 상수와의 산술 연산을 위한 연산자

  • DIV. I. -, MOD(%), +, *

비교연산자

- 컬럼값과 상수의 크기를 비교하는 연산자

  • +=, 0(!=),>,>=, 〈스=

논리연산자

 - 두 개 이상의 조건이 기술되는 질의문에서 조건식 간의 관계를 정의하는 연산자

  •  AND, OR, NOT

 

 

🔎  정리

  • 데이터 조작 언어(DML)에는 INSERT, UPDATE, DELETE, SELECT 명령어가 포함
  • INSERT는 테이블에 새로운 데이터를 삽입하며, 컬럼 일부 또는 전체에 대해 수행
  • UPDATE는 WHERE 조건을 만족하는 레코드의 특정 컬럼 값을 수정
  • DELETE는 조건을 만족하는 레코드를 삭제하며, 제약조건 위반 시 수행이 거부
  • SELECT는 테이블에서 데이터를 검색하는 명령으로, WHERE 절을 통해 조건 검색도 가능

 

 

 

 

 

 

 

 

 

 

 

'CS > Database' 카테고리의 다른 글

04. SQL - 1  (0) 2025.04.30
03. 관계형 모델  (0) 2025.04.29
02. 데이터베이스 모델링  (0) 2025.04.29
01. 데이터베이스 이해  (0) 2025.04.29