SQLD 정리

Korangii·2024년 11월 15일

SQLD

목록 보기
3/3

1. 데이터 모델링의 이해

✅ 데이터 모델링의 이해

데이터모델의 이해
엔터티
속성
관계
식별자

✅ 데이터 모델과 SQL

정규화
관계와 조인의 이해
모델이 표현하는 트랜잭션의 이해
Null 속성의 이해
본질식별자 vs 인조식별자


2. SQL 기본 및 활용

✅ SQL 기본

관계형 데이터베이스 개요
SELECT 문
함수
WHERE 절
GROUP BY, HAVING 절
ORDER BY 절

  • SELECT절에서 오직 한 개만 올 수 있다.
  • 메인쿼리의 마지막 문장에 위치한다.
    조인
    표준 조인

✅ SQL 활용

⭐️서브쿼리

  • 메인쿼리 안의 쿼리문을 뜻하며, 괄호로 감싸서 사용한다.
  • 단일 행(Single Row) 또는 복수 행(Multi Row) 비교 연산자와 함께 사용할 수 있다.
  • 연관(Correlated) 서브쿼리는 서브쿼리가 메인쿼리 칼럼을 포함하고 있는 형태의 서브쿼리이다.
  • 비 연관 서브쿼리가 주로 메인쿼리에 값을 제공하기 위한 목적으로 사용된다.
  • ORDER BY를 사용하지 못한다.
  • 메인쿼리의 결과가 서브쿼리로 제공될 수도 있고, 서브쿼리의 결과가 메인쿼리로 제공될 수도 있으므로 실행 순서는 상황에 따라 달라진다.

  • 반환되는 데이터의 형태에 따른 서브쿼리 분류
    • Single Row 서브쿼리(단일 행 서브쿼리) : 실행결과가 항상 1건 이하
      • 단일행 서브쿼리는 - 단일 행 비교 연산자(=,<,<=,>,>=,<>)와 함께 사용
    • Multi Row 서브쿼리(다중 행 서브쿼리) : 실행결과가 여러 건
      • 다중행 서브쿼리는 다중행 비교연산자(IN, All, ANY, SOME, EXITS)와 함께 사용
    • Multi Column 서브쿼리(다중 칼럼 서브쿼리) : 실행결과로 여러칼럼을 반환
      • 메인쿼리의 조건절에 여러 칼럼을 동시에 비교 가능
      • 서브쿼리와 메인쿼리에서 비교하고자 하는 칼럼 개수와 칼럼의 위치가 동일해야 한다.

  • Inline View(인라인 뷰) : FROM절에서 사용되는 서브쿼리
    • 독립성 : 테이블 구조가 변경되어도 뷰를 사용하는 응용 프로그램은 변경하지 않아도 된다.
    • 편리성 : 복잡한 질의를 단순하게 작성할 수 있다.
    • 보안성 : 숨기고 싶은 정보가 존재한다면, 뷰를 생성할 때 해당 칼럼을 빼고 생성하여 사용자에게 정보를 감출 수 있다.

집합 연산자

  • 중복된 행 모두 표시
    • 합집합 : UNION ALL
  • 중복된 행 하나의 행으로 표시
    • 합집합 : UNION
      - GROUP BY : 각각의 집합에 사용가능
      • ORDER BY : 가장 마지막 줄에 한 번만 사용가능(최종결과 정렬)
    • 교집합 : INTERSECT
    • 차집합 : EXCEPT(= MINUS, 오라클)

그룹 함수

윈도우 함수

Top N 쿼리

계층형 질의와 셀프 조인

  • 셀프 조인(Self Join) : 동일 테이블 사이의 조인
    - FROM절에 동일 테이블이 두 번 이상 나타난다.
    • 테이블과 칼럼명 모두 동일하다
    • 테이블 별칭(Alias) 사용 필수(식별 용도)
  • DISTINCT : 중복 행 제거(SQL)
  • 테이블 생성
    • 테이블명은 단수형과 객체를 의미하는 이름 사용
    • 다른 테이블명 및 테이블 내 칼럼명과 중복 X
    • 칼럼 뒤에 데이터 유형은 꼭 지정되어 있어야 한다.
    • 벤더에서 사전에 정의한 예약어는 쓸 수 없다.
    • "," : 칼럼별 구분
    • ";" : 테이블 생성명 끝
    • A-Z, a-z, 0-9, _, $, # 문자만 허용된다.

PIVOT 절과 UNPIVOT절

정규 표현식

✅ 관리 구문

DML
TCL
DDL
DCL

profile
https://honeypeach.tistory.com/ 로 이전했습니다.

0개의 댓글