
Oracle SQL에서 STDDEV() 함수는 통계 분석에서 핵심 개념인 표준편차(Standard Deviation)를 계산할 수 있게 해주는 집계 함수입니다. 평균(AVG)만으로는 데이터의 분산 정도를 파악하기 어려운 경우가 많기 때문에, STDDEV() 함수는 데이터의 흩어짐 정도를 분석할 때 유용하게 사용됩니다.
STDDEV() 함수는 입력된 수치형 칼럼의 표준편차를 반환합니다. 이 함수는 집계 함수로 단일 칼럼의 데이터 분산 정도를 수치화합니다.
SELECT STDDEV(salary) FROM employees;
SELECT STDDEV(salary) AS salary_stddev
FROM employees;
전체 직원의 급여 표준편차를 계산합니다.
부서별 급여 표준편차를 계산할 수 있습니다.
SELECT department_id, STDDEV(salary) AS dept_salary_stddev
FROM employees
GROUP BY department_id;
특정 조건을 만족하는 데이터의 표준편차 계산:
SELECT STDDEV(salary) AS sales_stddev
FROM employees
WHERE department_id = 80;
Oracle에서는 STDDEV()를 분석 함수로 사용할 수 있어, 행별로 그룹 내 표준편차 값을 계산할 수 있습니다.
SELECT employee_id, department_id, salary,
STDDEV(salary) OVER (PARTITION BY department_id) AS dept_stddev
FROM employees;
SELECT job_id, STDDEV(salary) AS job_salary_stddev
FROM employees
GROUP BY job_id;
SELECT department_id
FROM employees
GROUP BY department_id
HAVING STDDEV(salary) > (SELECT STDDEV(salary) FROM employees);
SELECT TO_CHAR(sales_date, 'YYYY-MM') AS month,
STDDEV(amount) AS monthly_stddev
FROM sales
GROUP BY TO_CHAR(sales_date, 'YYYY-MM');
| 함수 | 의미 | 결과 |
|---|---|---|
| STDDEV() | 표준편차 (sqrt(분산)) | 원 단위와 동일 |
| VARIANCE() | 분산 (표준편차의 제곱) | 제곱된 단위 |
A. 아니요. STDDEV는 NULL 값을 자동으로 무시합니다.
A. 숫자형(Numeric) 칼럼에만 사용 가능합니다.
A. STDDEV는 표본 표준편차(Sample), STDDEV_POP은 모집단 표준편차를 계산합니다.
STDDEV() 함수는 데이터의 퍼짐 정도를 분석하는 데 매우 유용하며, 단순 평균과 함께 사용하면 보다 입체적인 분석이 가능합니다. 특히 실무에서는 GROUP BY, HAVING, PARTITION BY 등과 결합하여 다양한 통계적 인사이트를 제공할 수 있습니다.
| [ORACLE] LAG() 함수 : PARTITION BY와 함께 쓰는 고급 예제 (0) | 2025.06.01 |
|---|---|
| [ORACLE] VARIANCE()로 분산 분석하기 : GROUP BY와 함께 활용하는 방법 (0) | 2025.06.01 |
| [ORACLE] MAX() 함수로 그룹 별 최대 값 구하는 법 (0) | 2025.06.01 |
| [ORACLE] MIN() 함수 사용법과 GROUP BY 절 실전 적용 (0) | 2025.06.01 |
| [ORACLE] MEDIAN() vs AVG() : 중간 값과 평균 값 차이 이해하기 (0) | 2025.06.01 |