티스토리 뷰

이번 게시물 부터는 데이터베이스함수 들을 다루어 보겠습니다. 데이터베이스함수들은 고맙게도 함수명의 앞에 D 를 포함하고 있습니다. 또 이 함수들은 기존의 함수들을 데이터베이스화 하여 기존함수의 기능을 다룹니다.  또 데이터베이스 함수들은 모두가 용법이 동일하여 하나의 데이터베이스 함수의 용법만 이해하시면 나머지 함수들은 쉽게 익히실수 있을 것입니다. 먼저 DSUM함수를 살펴보겠습니다. 이 함수는 기존의 합계를 구하는 함수 SUM함수를 데이터베이스화 한 함수입니다. 당연히 이함수도 합을 구하는 함수이겠지요.

그럼 살펴보겠습니다.

* DSUM 함수

기능: 데이터베이스의 필드에서 조건과 일치하는 값의 합을 구합니다.
- 여기서 데이터베이스란 이전의 셀범위와 동일하다 생각하시면 됩니다.(단 범위의 첫행에는 그열의레이블이 있어야 합니다.)
- 필드는 열을 말합니다.


용법: =DSUM(데이터베이스(범위), 필드명(열순번), 조건범위)
- 데이터베이스 인수는 첫행에 열머리글을 포함하는 범위를 말합니다.
- 필드명 은 열머리글 말하며 열순번은 범위에서 몇번째 열인지를 말합니다.
- 조건범위 는 필드명과 그 아래 하나이상의 셀값으로 이루어 집니다.


용례1: =DSUM(A1:E10, "학번", F1:F2)
용례1의결과: 데이터베이스범위 A1:E10 에서 '학번' 필드가 조건범위 F1:F2 와 만족하는 셀들의 합을 구합니다.

- 데이터베이스 함수는 말로는 이해가 잘 되지 않으실 것입니다. 예제를 하나 풀어 봅니다.

[그림 1]

위의 그림에서 데이터베이스 범위는 A2:E11 까지입니다. 필드명을 포함하고 있지요. 범위의 첫행이 열레이블인 필드명입니다. 조건범위는 아래의 노란색 박스입니다. 

만일 D13:D14 를 조건범위로 선정한다면 조건범위의 첫행이 필드명이고 그아래 한행이 조건입니다. 조건의 필드에서 조건에 해당하는 값을 찾아란것이지요.
조건범위를 이렇게 지정한 경우 '국어' 필드에서 80이상인 값들을 찾는 것입니다. 조건은 SUMIF함수나 COUNTIF함수 에서의 조건과 동일한 방법입니다. 단지 따옴표로 묶지는  말아야 한다는 것입니다.

위의 B14셀의 수식 =DSUM(A2:E11,3,D13:D14) 은 데이터베이스범위 A2:E11에서 범위중3번째열 곧 '국어'필드가 되겠네요.
이 필드에서 조건범위 D13:D14 의 조건필드 국어가 조건값인 ">=80" , 80 이상인 값들을 찾아 합을 구하란 것입니다. 그합이 467 이란 것이지요.


용례2: =DSUM(A2:E11,"수학", E13:E14)   [그림1] 을 기준으로 합니다.
용례2의결과: 데이터베이스 범위 A2:E11 에서 "수학" 필드의 합을 구합니다. 그런데 필드의 모든값을 합하는 것이 아니라 조건범위 E13:E14 ,곧 '성별' 필드의 값이  '남' 인 사람의 수학필드 값만을 합계 내는 것이지요.
이렇게 함수가 요구하는 계산이 일어나는 곳은 두번째 인수인 필드명이란 것을 기억하세요. 또 이 두번째 인수는 필드명으로 이렇게 입력하셔도 좋고 범위에서 의 열순번을 적으셔도 좋습니다 '수학' 같은 경우 데이터베이스범위에서의 열순번은 5 가 되겠네요.


용례3: =DSUM(A2:E11, 5 ,E13:E14)   [그림1] 을 기준으로 합니다.
용례3의결과: 이 예는 위의 용례2와 동일합니다. "수학"이란 필드명을 열순번으로 적은 것입니다.

기출문제: 이전의 게시물의 DSUM 함수를 참조하세요.


* 컴활2급과 컴활3급 함수목록 ver 0.2


댓글