DBMS - SQL

RYU·2025년 4월 12일

DBMS

목록 보기
3/9

SQL

SQL이란?

  • 관계형 데이터베이스 관리 시스템(RDBMS)에서 데이터를 관리하고 조작하기 위한 표준화된 프로그래밍 언어 / 명령어
  • SQL을 사용하면 데이터베이스에서 데이터를 저장, 검색, 수정 삭제할 수 있으며, 데이터베이스 구조를 정의하고 관리할 수 있다.

SQL의 주요 특징

  • 비절차적 언어 -> 원하는 결과를 명시하면 시스템이 실행 방법을 결정
  • 표준화된 문법
  • 다양한 데이터베이스 시스템 지원
  • 강력한 데이터 조작 기능 -> 복잡한 쿼리와 대용량 데이터 처리 가능

SQL의 주요 구성 요소

  1. DDL(Data Definition Language) : 데이터베이스 구조 정의
  • CREATE : 데이터베이스 객체 생성
  • ALTER : 객체 구조 변경
  • DROP : 객체 삭제
  • TRUNCATE : 테이블 데이터 전체 삭제
  1. DML(Data Manipulation Language) : 데이터 조작
  • SELECT : 데이터 조회
  • INSERT : 새 데이터 삽입
  • UPDATE : 기존 데이터 수정
  • DELETE : 데이터 삭제
  1. DCL(Date Control Language) : 데이터 접근 권한 관리
  • GRANT : 사용자에게 권한 부여
  • REVOKE : 사용자의 권한 철회

기본 SQL 명령어

  • SELECT
  • INSERT
  • UPDATE
  • DELETE
  • CREATE TABLE : 테이블 생성
  • ALTER TABLE
  • DROP TABLE : 테이블 삭제
  • SHOW DATABASES : 전체 데이터베이스 리스팅
  • USE DB이름 : 특정 데이터베이스 선택(특정 폴더(DB)로 접속)
  • SHOW TABLES : 현재 접속해 있는 DB안의 모든 테이블들을 리스팅

SQL 제약 조건

  • PRIMARY KEY : 고유 식별자
  • FOREIGN KEY : 다른 테이블과의 관계 정의
  • UNIQUE : 중복 값 방지
  • NOT NULL : NULL값 방지
  • CHECK : 특정 조건 충족 확인
  • DEFAULT : 기본값 설정

SQL 조인

  • INNER JOIN : 두 테이블에서 일치하는 행만 반환
  • LEFT JOIN : 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 행 반환
  • RIGHT JOIN : 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 행 반환
  • FULL OUTER JOIN : 양쪽 테이블의 모든 행 반환

=> 나중에 자세히 다룰 것이다.


SQL 함수

  • 집계 함수 : COUNT(), SUM(), AVG(), MAX(), MIN()
  • 문자열 함수 : CONCAT(), SUBSTRING(), UPPER(), LOWER()
  • 날짜 함수 : DATE(), YEAR(), MONTH(), DAY()
  • 수학 함수: ROUND(), ABS(), CEILING(), FLOOR()

SQL 인덱스

  • 인덱스는 데이터베이스 성능을 향상키는 데 사용된다.

CREATE INDEX idx_name ON table_name (column_name);

  • 장점 : 검색 속도 향상 / 단점 : 추가 저장 공간이 필요, 데이터 수정시 성능 저하

SQL 성능 최적화

  1. 적절한 인덱스 사용
  2. 불필요한 조인 피하기
  3. 서브쿼리 대신 조인 사용
  4. LIKE 연산자 사용시 와일드카드 위치 주의
  5. 적절한 데이터 타입 선택
  6. 실행 계획 분석

0개의 댓글