엑셀에는 데이터를 손쉽게 관리하고 분석할 수 있도록 돕는 데이터베이스(Database) 함수가 총 12개 마련되어 있습니다. 이 글에서는 각 함수의 개념과 기본 구조를 먼저 살펴본 뒤, 하나의 예제 데이터셋을 활용해 12개 함수를 하나씩 직접 적용하는 방법까지 단계별로 안내합니다. 아래 목차를 참고해 필요한 부분부터 빠르게 확인하실 수도 있습니다.

엑셀 데이터베이스 함수란?
데이터베이스 함수는 특정 조건을 만족하는 데이터에 대해 합계, 평균, 개수, 최대·최솟값, 곱, 표준편차, 분산 등의 간단한 연산을 수행할 수 있게 해주는 함수군입니다. 모든 함수 이름은 Database의 첫 글자인 D로 시작하며, 종류는 다음과 같습니다.
- DSUM – 조건에 맞는 값의 합계
- DAVERAGE – 조건에 맞는 값의 평균
- DCOUNT / DCOUNTA – 숫자가 있는 셀 / 비어 있지 않은 셀의 개수
- DGET – 조건에 맞는 단일 값 추출
- DMAX / DMIN – 최댓값 / 최솟값
- DPRODUCT – 값들의 곱
- DSTDEV / DSTDEVP – 표본 기반 / 모집단 기반 표준편차
- DVAR / DVARP – 표본 기반 / 모집단 기반 분산
기본 구문과 인수 이해하기
12개 함수는 모두 동일한 인수 구조를 공유합니다. 대표적으로 DSUM 함수의 구문은 아래와 같습니다.
구문:
=DSUM(database, field, criteria)
인수 설명:
- database: 연산을 수행할 데이터 목록 또는 범위입니다. 셀 참조나 이름 정의된 범위를 사용할 수 있습니다.
- field: 결과를 반환할 열입니다. 큰따옴표로 묶은 열 머리글(예: "Profit"), 데이터베이스 내 열 번호, 또는 머리글 셀 참조 중 원하는 방식으로 지정할 수 있습니다.
- criteria: 조건이 입력된 범위입니다. 함수는 이 조건을 만족하는 셀의 데이터만 가져오며, >, <, =, <> 등의 비교 연산자를 조합해 여러 조건을 설정할 수도 있습니다.
엑셀 데이터베이스 함수 12가지 사용법
아래 예제 데이터셋(과수원 수확량 데이터)을 사용해 각 함수의 실제 동작 방식을 살펴보겠습니다.

1. DSUM 함수 – 조건부 합계
DSUM 함수는 지정한 조건과 일치하는 레코드의 특정 필드(열) 값을 모두 더합니다.
📌 진행 단계
- 먼저 조건 범위(criteria range)를 만들어야 합니다. 여기서 만든 조건 범위는 이후 모든 함수에 공통으로 사용합니다.
- B12~G12 셀에 Tree, Height, Age, Yield, Profit, Height를 입력합니다. 필요하면 머리글을 추가해 조건을 더 세분화할 수 있습니다.
- B13에는 ="=Apple", C13에는 >10, G13에는 <16을 입력합니다. 즉, '키가 10~16 사이인 사과나무'라는 조건이 됩니다.
- 아래 행에 조건을 추가하면 OR 조건처럼 확장됩니다. 예를 들어 B14에 ="Pear"를 입력하면 배나무도 포함됩니다.
G17 셀에 다음 수식을 입력하면, B12:B13의 조건(사과나무만)에 해당하는 이익 합계가 반환됩니다.
=DSUM(B4:F10, "Profit", B12:B13)
이어서 G18 셀에는 다음 수식을 입력합니다. 배나무 전체와, 키가 10~16 사이인 사과나무의 이익이 함께 합산됩니다.
=DSUM(B4:F10, "Profit", B12:G14)

2. DAVERAGE 함수 – 조건부 평균
DAVERAGE 함수는 지정한 조건과 일치하는 레코드의 특정 열 값 평균을 구합니다.
G17 셀에 아래 수식을 입력하면, 키가 10피트를 초과하는 사과나무의 평균 수확량(Yield)을 구할 수 있습니다.
=DAVERAGE(B4:F10, "Yield", B12:C13)
G18 셀에는 전체 나무의 평균 수확량을 구하는 수식을 입력합니다. 두 번째 인수의 3은 데이터베이스에서 세 번째 열, 즉 Yield 열을 의미합니다.
=DAVERAGE(B4:F10, 3, B4:F10)

3. DCOUNT 함수 – 숫자 셀 개수 세기
DCOUNT 함수는 조건과 일치하는 레코드 중 해당 필드에 숫자가 들어 있는 셀의 개수를 계산합니다.
G17 셀에 아래 수식을 입력하면, 키가 10~16 사이인 사과나무 중 Age 열에 숫자가 있는 셀의 개수를 구할 수 있습니다.
=DCOUNT(B4:F10, "Age", B12:G13)

4. DCOUNTA 함수 – 비어 있지 않은 셀 개수 세기
DCOUNTA 함수는 조건과 일치하는 레코드 중 해당 필드에서 비어 있지 않은 셀의 개수를 계산합니다.
G17 셀에 아래 수식을 입력하면, 키가 10~16 사이인 사과나무의 Profit 열에서 빈 셀이 아닌 항목의 개수를 얻을 수 있습니다.
=DCOUNTA(B4:F10, "Profit", B12:G13)

5. DGET 함수 – 단일 값 추출
DGET 함수는 조건과 일치하는 단 하나의 레코드를 데이터베이스에서 추출합니다. 조회(Lookup) 함수와 유사한 결과를 반환하며, 조건을 만족하는 값이 여러 개면 #NUM! 오류가 발생한다는 점에 유의하세요.
G17 셀에 아래 수식을 입력하면 사과나무와 배나무의 수확량을 추출하려 시도하지만, 조건에 맞는 값이 여러 개이므로 #NUM! 오류가 표시됩니다.
=DGET(B4:F10, "Yield", B12:B14)
반면 G18 셀에 아래 수식을 입력하면 조건을 만족하는 결과가 하나뿐이므로 오류 없이 정상적인 값이 반환됩니다.
=DGET(B4:F10, 4, B12:G14)

6. DMAX 함수 – 최댓값 구하기
DMAX 함수는 조건과 일치하는 레코드 중 해당 필드에서 가장 큰 값을 반환합니다.
G17 셀에 아래 수식을 입력하면, 배나무 전체 및 키가 10~16 사이인 사과나무 중 최대 이익을 구할 수 있습니다.
=DMAX(B4:F10, "Profit", B12:G14)

7. DMIN 함수 – 최솟값 구하기
DMIN 함수는 조건과 일치하는 레코드 중 해당 필드에서 가장 작은 값을 반환합니다.
G17 셀에 아래 수식을 입력하면, 배나무 전체 및 키가 10~16 사이인 사과나무의 최소 이익을 구할 수 있습니다.
=DMIN(B4:F10, "Profit", B12:C13)

8. DPRODUCT 함수 – 곱 계산
DPRODUCT 함수는 조건과 일치하는 레코드의 해당 필드 값들을 모두 곱합니다.
G17 셀에 아래 수식을 입력하면, 배나무 전체 및 키가 10~16 사이인 사과나무 수확량의 곱을 구할 수 있습니다.
=DPRODUCT(B4:F10, "Yield", B12:G14)

9. DSTDEV 함수 – 표본 표준편차
DSTDEV 함수는 선택된 데이터베이스 항목 중 표본(sample)을 기준으로 표준편차를 추정합니다.
G17 셀에 아래 수식을 입력하면, 배나무 전체 및 키가 10~16 사이인 사과나무 수확량의 표본 표준편차를 구할 수 있습니다.
=DSTDEV(B4:F10, "Yield", B12:B14)

10. DSTDEVP 함수 – 모집단 표준편차
DSTDEVP 함수는 선택된 데이터베이스 항목 전체(모집단)를 기준으로 표준편차를 계산합니다.
G17 셀에 아래 수식을 입력하면, 같은 조건의 데이터에 대한 모집단 기반 표준편차를 구할 수 있습니다.
=DSTDEVP(B4:F10, "Yield", B12:B14)

11. DVAR 함수 – 표본 분산
DVAR 함수는 선택된 데이터베이스 항목의 표본을 기준으로 분산을 추정합니다.
G17 셀에 아래 수식을 입력하면, 배나무 전체 및 키가 10~16 사이인 사과나무 수확량의 표본 분산을 구할 수 있습니다.
=DVAR(B4:F10, "Yield", B12:B14)

12. DVARP 함수 – 모집단 분산
DVARP 함수는 선택된 데이터베이스 항목의 전체 모집단을 기준으로 분산을 계산합니다.
G17 셀에 아래 수식을 입력하면, 같은 조건의 데이터에 대한 모집단 기반 분산을 구할 수 있습니다.
=DVARP(B4:F10, "Yield", B12:B14)

사용 시 주의사항
- 조건 범위에 빈 행을 두지 마세요. 빈 행이 있으면 함수가 모든 조건을 무시하고 전체 데이터를 대상으로 계산할 수 있습니다.
- 조건에는 와일드카드(*)를 사용할 수 있습니다. 예를 들어 A*는 'A로 시작하는 텍스트'를 의미합니다.
- 텍스트 조건은 등호를 명시하지 않아도 되지만, 비교 연산(>, < 등)을 사용할 때는 반드시 연산자를 함께 입력해야 합니다.
마치며
지금까지 엑셀의 12가지 데이터베이스 함수를 모두 살펴보았습니다. 조건 범위를 한 번만 잘 만들어 두면 DSUM, DAVERAGE, DMAX 등 다양한 함수를 상황에 맞게 자유롭게 활용할 수 있습니다. 궁금한 점이나 추가로 알고 싶은 내용이 있다면 댓글로 남겨주세요. 엑셀 실무 팁은 앞으로도 계속 다룰 예정이니 많은 관심 부탁드립니다.