IT 소스/MariaDB

[MariaDB] PERCENTILE_CONT - 백분위수 추정 함수

한량이야기 2024. 3. 13. 19:19
반응형

안녕하세요. 경제적, 시간적 자유를 꿈꾸는 한량입니다.

PERCENTILE_CONT - 백분위수 추정 함수

MariaDB의 백분위수 추정 함수 - PERCENTILE_CONT()

PERCENTILE_CONT() 함수는 데이터를 정렬한 후 일반적으로 '0'과 '1'사이의

주어진 값으로 백분위수에 해당하는 값을 계산하여 반환합니다

 

예문 테이블을 가지고 백분위수 함수가 어떻게 동작하는지 알아보겠습니다.

-- exam_results 테이블 생성 쿼리
CREATE TABLE exam_results (
    student_id INT AUTO_INCREMENT PRIMARY KEY,  -- 학생 ID, 자동 증가하는 기본 키
    student_name VARCHAR(50),                  -- 학생 이름
    score INT                                  -- 시험 점수
);

-- 기본 데이터 삽입 쿼리
INSERT INTO exam_results 
    (student_name, score) 
VALUES
    ('홍길동', 85), 
    ('김철수', 90), 
    ('이영희', 75), 
    ('박민수', 80), 
    ('정수진', 95),
    ('최영미', 70), 
    ('이철민', 88), 
    ('김지은', 92), 
    ('박영호', 78), 
    ('최미나', 83);

 

아래의 SQL 쿼리는 시험 점수에 대한 주어진 값으로 백분위수를 계산합니다.

-- 시험 점수에 대한 백분위수에 해당하는 값을 계산
SELECT PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY score) AS median_score FROM exam_results;

 

이 쿼리는 'exam_results'테이블에서 'score'컬럼의 값들을 정렬한 후,

백분위수를 계산하여 반환합니다.

PERCENTILE_CONT() 함수는 주어진 백분위수(여기서는 '0.5' 즉, 중앙값)에 해당하는 값을

WITHIN GROUP 절을 사용하여 'score'컬럼을 기준으로 순서를 지정하고,

이를 기반으로 백분위수를 계산합니다.

 

쿼리를 실행하면 아래와 같은 값을 얻을 수 있습니다.

백분위수 함수 쿼리 실행 결과 값

 

PERCENTILE_CONT() 함수는 일반적으로 수치형 데이터에 대해 사용되며, 

데이터의 분포를 분석하고 특정 백분위수에 해당하는 값의 추정치를 구할 때 유용합니다.

반응형