Database

[Database] Ch01. Introduction (SQL의 정석)

OptimizerStart 2025. 5. 1. 16:44

[Database] Ch01. Introduction (SQL의 정석)

SQL

  • 데이터베이스에 요청할 때 사용하는 자연어가 아닌 언어.
  • Structured 구조화 되어있다. = 문법이 있다. 자연어가 아니다.

Query 질의

Language 언어. 자연어 아님

자료구조(링크드리스트)에서 발전된것이 데이터베이스

RDB 관계형

- 데이터끼리 관계를 맺어줌

이유: 중복제거를 위해 쪼갬

구조

  • Map K, V
    • 장점: 대용량 처리.
    • 단점: 순서 X → 정렬, 범위 검색 불가.
    • → Tree 사용

발전과정

  • DB → RDB → ORDB → NoSQL → 벡터 DB
  • 벡터 DB의 경우 데이터를 숫자로 저장(임베딩)하여 요소간 관계를 확인

참고

  • LLM은 자연어로 SQL로 질의하는것 까지만 커버함.

RDB와 NoSQL

기준 RDB NoSQL

  정형(형태 고정) 비정형(형태 비고정)
활용   랭킹, 팔로잉-팔로워
    RDB보완으로 같이 사용

용어

  • Field iv
  • Table HashMap, 객체 배열
  • Read, Write
  • Row 행, 객체
  • Column Key✅
  • View R, W(특별한 경우만)✅
  • Index 인덱스 트리 구조로 정렬되어있고 범위검색에 빠름
  • Synonym 별명
  • Program Unit SQL, PL/SQL로 작성된 Procedure, Function, Trigger, Package
  • Key

KEY

  1. PK특징
    • Null값 허용X
  2. 정의 : 행을 구분하는 키
  3. FK기능
    1. 참조 무결성 체크 (다른 테이블에 원래 존재하는 값인지 유효성 체크)
    2. Table 간의 관계 알기
    특징
    • Null 값 허용
  4. 정의 : 다른 테이블의 기본키