• 프로시저 (Procedure)
    • 절차형 SQL의 개념
      • 일반적인 개발 언어와 같이 SQL도 절차 지향적인 프로그래밍이 가능하도록 절차형 SQL을 제공
      • 절차형 SQL로는 프로시저, 트리거, 사용자 정의 함수 등이 있음
    • 프로시저
      • 절차형 SQL을 활용하여 특정 기능을 수행할 수 있는 트랜잭션 언어
      • 프로시저 구성
        • DECLARE -> 필수
        • BEGIN -> 필수
        • CONTROL
        • SQL
        • EXCEPTION
        • TRNASACTION
        • END -> 필수
      • 프로시저 생성: CREATE PROCEDURE 명령어로 프로시저를 생성하여 데이터베이스 내에 저장
      • 프로시저 실행: EXECUTE 또는 EXEC 명령어로 프로시저를 실행
      • 프로시저 제거: DROP 명령어로 프로시저를 제거
  • 사용자 정의 함수
    • 일련의 연산 처리 결과를 단일 값으로 반환하는 절차형 SQL
    • 사용자 정의 함수를 호출하여 실행되며, 반환되는 단일 값을 조회, 삽입, 수정 등에 이용함
    • 사용자 정의 함수의 구성
      • DECLARE -> 필수
      • BEGIN -> 필수
      • CONTROL
      • SQL
      • EXCEPTION
      • RETURN -> 필수
      • END -> 필수
    • 사용자 정의 함수의 생성: CREATE FUNCTION 명령어로 생성
  • 절차형 SQL-2
    • 트리거 (Trigger)
      • 특정 테이블에 삽입, 수정, 삭제 등의 이벤트가 수행되었을 때 데이터베이스에서 자동으로 실행하도록 작성된 프로그램
      • 트리거 내에서는 COMMIT, ROLLBACK 등의 트랜잭션 종료 명령어를 사용할 수 없음
      • 트리거의 구성
        • DECLARE -> 필수
        • EVENT -> 필수
        • BEGIN -> 필수
        • CONTROL
        • SQL
        • EXCEPTION
        • END -> 필수
      • 트리거의 생성: CREATE TRIGGER 명령어로 트리거를 생성
    • 이벤트 (Event)
      • 트리거를 실행시키는 사건
      • 이벤트 유형과 이벤트 순서에 맞게 트리거 수행을 위한 조건을 입력
      • 이벤트 유형: DDL 이벤트, DML 이벤트, 데이터베이스 이벤트
      • 이벤트 순서: BEFORE, AFTER
  • 응용 SQL 작성
    • 윈도우 함수의 개념
      • 행과 행간의 관계를 쉽게 정의하기 위해 만든 함수
      • 서브 쿼리에서는 사용이 가능하지만, 중첩해서 사용할 수는 없음
      • 윈도우 함수의 구문
        • SELECT <WINDOWS_FUNCTION> [ARGUMENTS] OVER ([PARTITION BY 속성]) [ORDER BY 속성] FROM TABLE
      • 윈도우 함수의 종류: 윈도우 함수는 집계 함수, 순위 함수, 행순서 함수, 그룹 내 비율 함수 등으로 분류
    • 그룹 함수행과 행간의 관계를 쉽게 정의하기 위해 만든 함수
      • 소그룹 간의 소계, 중계, 합계, 총 합계 등 여러 레벨의 하볘를 산출하는 함수
      • 그룹 함수를 이용하면 하나의 SQL문만으로 중간 합계를 구하는 작업을 할 수 있음
      • ROLLUP: 소그룹 간의 소계를 계산하는 함수
      • CUBE 함수: 결합 가능한 모든 값에 대해 다차원적인 소계를 계산할 수 있음
      • GROUPING SETS: 특정 항목에 대한 소계를 계산하는 함수

WRITTEN BY
ppdha82

,