수수한 코딩세상

[DB] 집계함수 (Aggregate Functions), 중복 제거 본문

수수한 코딩세상/DB

[DB] 집계함수 (Aggregate Functions), 중복 제거

수수한 코딩열공생 2024. 6. 25. 15:59
<개발 도구>
DBMS : MySQL
Editor : DBeaver

 

데이터 분석을 위해서는 데이터 안에서 의미를 찾아내는 것입니다. 의미를 찾기 위한 방법 중 하나로 통계를 내는 방법이 있습니다. 이번 글에서는 데이터 안에서 통계를 낼 때 사용하는 집계 함수(Aggregate Functions)에 대해 정리해 보도록 하겠습니다.

 

집계함수 (최댓값, 최솟값, 평균값, 합계, 개수 세기)

▶ 최댓값 (Maximum)

SELECT MAX(컬럼명) FROM 테이블명;

해당 컬럼의 최댓값을 알 수 있습니다.

☞ 응용 : MAX() 말고 다르게 최댓값 구하는 방법
LIMIT 연산자를 이용하면 출력 행 개수를 지정해 줄 수 있습니다. 오름차순으로 정렬 후 첫 번째 행을 출력하면 그게 최댓값이 됩니다.
SELECT 컬럼명 FROM 테이블명 ORDER BY 컬럼명 ASC LIMIT 1;​

 

 

▶ 최솟값 (Minimum)

SELECT MIN(컬럼명) FROM 테이블명;

해당 컬럼의 최솟값을 알 수 있습니다.

☞ 응용 : MIN() 말고 다르게 최솟값 구하는 방법
LIMIT 연산자를 이용하면 출력 행 개수를 지정해 줄 수 있습니다. 내림차순으로 정렬 후 첫 번째 행을 출력하면 그게 최댓값이 됩니다.
SELECT 컬럼명 FROM 테이블명 ORDER BY 컬럼명 DESC LIMIT 1;​

 

 

평균값 (Average)

SELECT AVG(컬럼명) FROM 테이블명;

해당 컬럼의 평균값을 알 수 있습니다.

 

합계 (Sum)

SELECT SUM(컬럼명) FROM 테이블명;

해당 컬럼의 합계를 알 수 있습니다.

 

  개수 세기 (Count)

SELECT COUNT(컬럼명) FROM 테이블명;

//현제 테이블의 데이터 개수를 알 수 있음
SELECT COUNT(*) FROM 테이블명;

해당 컬럼의 행 개수를 알 수 있습니다.

 

중복 제거

▶ 중복 제거 명령어 DISTINCT

SELECT DISTINCT 컬럼명 FROM 테이블명;

해당 컬럼에서 중복되는 데이터를 제거해서 출력해 줍니다.

 

다양한 집계함수를 WHERE 필터링한 데이터와 응용시킨다면 원하는 데이터를 추출해 낼 수 있습니다.

 


Reference

해당 글은 애플코딩님의 강의를 보고 정리한 내용입니다.

https://codingapple.com/course/sql-and-database/

 

한 번에 끝내는 SQL & Database - 코딩애플 온라인 강좌

SQL은 관계형 데이터베이스에서 데이터를 입출력할 때 사용하는 언어입니다.  관계형 데이터베이스를 다루는 곳에서 백엔드 개발 잘하고 싶다면 SQL을 잘 알아두도록 합시다.  실은 SQL을 개발자

codingapple.com