본문 바로가기

나 신입/엑셀

엑셀 데이터베이스 함수(DSUM, DCOUNTA, DMAX, DMIN)

320x100

1. DSUM 함수

 

SUM : 데이터의 합계

DSUM : 조건에 맞는 데이터의 합계

 

이런 식으로 함수 앞에 D가 붙으면 조건을 부여한다는 뜻이다. (다 그런진 모르겠음)

 

DSUM(원본테이블, 계산필드, 조건테이블)

 

 

구분에서 무용인 행의 예매량만 더해서 합계를 채우려면

 

=DSUM(A2:E10,"예매량",G9:G10)

 

해주면 된다.

 

 

A2:E10은 테이블 전체를 의미하고

"예매량"은 계산할 데이터들이 있는 열의 컬럼명

G9:G10은 조건 테이블을 의미한다.

 

[표2]에서 지점은 강북, 판매량은 700이상인 사원의 판매총액의 평균을 구하고자한다면

 

=DAVERAGE(I2:L10,"판매총액",M9:N10)

 

해주면 된다.

 

이쯤되면 패턴이 보이는게,

D함수 뒤에 첫번째로는 전체 테이블

두번째는 구하고자 하는 값이 있는 컬럼명

세번째는 조건을 적어둔 테이블을 넣어주기만 하면 된다.

 

추가적으로 이런 데이터베이스 함수의 조건에 여러 개를 주고 싶은 경우는

이런 식으로 밑에 조건을 늘려갈 수 있다.

물론 컬럼명을 추가해서 옆으로 확장해도 좋다.

다만 옆으로 추가하면 AND 조건으로 추가되고

밑으로 추가하면 OR 조건으로 추가된다.

 

따라서 위 같은 경우는

1. 강북 지점이고 판매량이 700이상인 경우

2. 강남 지점이고 판매량이 600이상인 경우

합계가 계산된다.

 

2. DCOUNTA 함수

 

COUNT : 데이터의 개수

DCOUNT : 조건에 맞는 데이터의 개수

COUNTA : 범위에서 비어있지 않은 데이터의 개수

DCOUNTA : [조건 중에서] 범위에서 비워있지 않은 데이터의 개수

 

DCOUNT를 사용하는 [표3]의 경우도 마찬가지로


전체 테이블, 구하고자 하는 값이 있는 "사랑의집" 컬럼명, 조건 테이블을 입력하면 된다.

=DCOUNTA(A14:E24,"사랑의집",G24:G25)

 

3. DMAX, DMIN 함수

 

테이블 전체 : =I14:L25

구할 컬럼명 : 판매가

조건 테이블 : J14:J15 (제조회사-상공전자) (이렇게 붙어있는 경우 따로 안 만들어도 바로 사용가능)

 

=DMAX(I14:L25,"판매가",J14:J15)-DMIN(I14:L25,"판매가",J14:J15)

 

이걸 이용해서 빠르게 제조회사가 상공전자인 경우의 최고-최저가 차이를 구할수 있다.

 

잡기술로 제조회사 대신에 편하게 4 라고 입력해도 된다.

그 이유는 전체 테이블을 잡았을 때 "판매가" 영역이 4번째 컬럼이기 때문.

SQL의 GROUP BY, ORDER BY를 컬럼명 대신 숫자로 편하게 하는 방식과 동일하다.

 

따라서 이렇게 작성해도 똑같은 결과가 나온다.

=DMAX(I14:L25,4,J14:J15)-DMIN(I14:L25,4,J14:J15)

 

 

 

반응형

'나 신입 > 엑셀' 카테고리의 다른 글

엑셀 시트 보호와 페이지 레이아웃  (0) 2021.08.03