SQL 함수

(2025-04-29)

집계 함수, SQL Aggregate


1. [SQL]  SQL 함수 SQL 함수의 구분
     - 내장 함수
        . 단일 행 함수 
           .. 한 행(row)을 입력으로 받아 한 값을 반환
           .. 例) 숫자형 함수, 문자열 함수, 날짜형 함수, 형변환 함수 등
        . 다중 행 함수 
           .. 여러 행을 입력받아 하나의 결과를 반환
           .. 例) 집계 함수, 그룹 함수, 윈도우 함수
     - 사용자 정의 함수
           .. 사용자가 직접 정의한 함수
           .. 例) CREATE FUNCTION ...

  ㅇ 단일 행 함수 
     - 숫자형 함수
        . ABS(x) : 절댓값, CEIL(x) : 올림 (Ceiling), FLOOR(x) :	내림 (Floor) 등
     - 문자열 함수
        . CONCAT(a,b) : 문자열 연결, SUBSTR(s,start,length) : 부분 문자열, 
          LENGTH(s) : 문자열 길이 등
     - 날짜형 함수
        . CURRENT_DATE : 현재 날짜 반환, EXTRACT(part FROM date) : 날짜 요소 추출, 
          DATE_ADD(date,INTERVAL n unit) : 날짜 더하기 등
     - 형변환 함수
        . CAST(expression AS type) : 명시적 형변환, 
          CONVERT(expression, type) : 형변환 (주로 MySQL 스타일),
          TO_CHAR(date, format) : 날짜를 문자열로 변환 (주로 Oracle) 등

  ㅇ 다중 행 함수  :  데이터 분석을 위한 그룹핑 기능 관련 함수
     - Aggregate 기능 (대표적임)
        . 여러 행을 입력으로 받아 하나의 결과를 계산하는 함수
        . 例) COUNT() : 개수, SUM() : 합계, AVG() : 평균, MAX() : 최댓값, MIN() : 최솟값,
              VAR_POP() : 모분산, VAR_SAMP() : 표본분산, STDDEV_POP() : 모표준편차,
              STDDEV_SAMP() : 표본표준편차
     - Group 기능 
        . 결과를 다양한 방법으로 그룹화
        . 例) ROLLUP : 위계적 요약, CUBE : 모든 조합을 요약, GROUPING SETS : 사용자 정의 그룹핑
     - Window 기능
        . 다수 행을 대상으로 하지만 결과는 각 행마다 반환하는 함수
        . 例) ROW_NUMBER(), RANK(), DENSE_RANK(), SUM() OVER(), AVG() OVER()


2. [SQL]  SQL 집계 함수

  ㅇ COUNT()  :  행(row) 개수를 셈
     - (주의) NULL 값은 제외됨 (단, COUNT(*)는 NULL 포함 전체 행 수)
  ㅇ SUM()  :  특정 컬럼의 값들을 모두 합산
     - (주의) 컬럼에 NULL 값이 있어도 무시하고 합산
  ㅇ AVG()  :  특정 컬럼 값들의 평균 계산
     - (주의) NULL은 제외하고 평균 계산
  ㅇ MIN()  :  최소값 반환
     - (주의) NULL은 무시
  ㅇ MAX()  :  최대값 반환
     - (주의) NULL은 무시
  ㅇ VAR_POP()  :  모분산
     - (계산식) {# \text{VAR_POP}(x) = \frac{1}{n} \sum (x_i-\bar{x})^2 #}
  ㅇ VAR_SAMP()  :  표본분산
     - (계산식) {# \text{VAR_SAMP}(x) = \frac{1}{n-1} \sum (x_i-\bar{x})^2 #}
  ㅇ STDDEV_POP()  :  모표준편차 
     - (계산식) {# \text{STDDEV_POP}(x) = \sqrt{\text{VAR_POP}(x)} #}
  ㅇ STDDEV_SAMP()  :  표본표준편차 
     - (계산식) {# \text{STDDEV_SAMP}(x) = \sqrt{\text{VAR_SAMP}(x)} #}

  ※ 例) (GROUP BY 활용하여, 부서별 평균 급여 계산)
     - SELECT department_id, AVG(salary) FROM employees GROUP BY department_id;

SQL
1. SQL   2. SQL 쿼리 (SELECT 구문)   3. SQL 활용   4. SQL 조인   5. SQL 함수   6. DDL (데이터 조작:테이블 생성/변경)   7. 제약조건   8. SQL 용어  

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]        편집·운영 (차재복)          편집 이력          편집 격려 (소액 후원)
[SQL]1. SQL   2. SQL 쿼리 (SELECT 구문)   3. SQL 활용   4. SQL 조인   5. SQL 함수   6. DDL (데이터 조작:테이블 생성/변경)   7. 제약조건   8. SQL 용어  

  1. Top (분류 펼침)      :     1,607개 분류    6,634건 해설