본문 바로가기
POWER BI

[POWER BI/파워비아이] DAX 기본 이해하기 - Related 함수 | 데이터 관계 이해하기

by 하니in독일 2024. 11. 21.
반응형

 

 

안녕하세요? 오늘은 DAX에서 기본적으로 쓰이는 함수 중 관계를 통한 데이터를 가져올 때 사용할 수 있는 RELATED 함수에 대해 알아보겠습니다. 이 함수는 주로 데이터 모델에서 다대일 관계에 사용합니다. 이와 비슷한 함수로는 다수의 값을 반환할 수 있는 RELATEDTABLE이 있습니다. (다대일에 사용)

 

오늘은 이 함수에 대해 좀 더 자세히 알아볼게요! 




RELATED 함수 사용법


Power BI에서는 여러 테이블 간의 관계를 정의할 수 있습니다. 예를 들어, '세일즈' 테이블과 '제품' 테이블이 각각 존재한다고 가정해 봅시다. '세일즈' 테이블과 '제품' 테이블 사이에는 '제품'이라는 공통된 열이 존재한다고 생각하면, 이를 이용해 일대다의 관계를 만들 수 있습니다. 

 

예시 테이블은 아래와 같습니다.

제품 테이블

제품번호  제품 (연결 열) 가격
1 태블릿 1000
2 스마트폰 700
3 컴퓨터 1500

 

세일즈 테이블

판매원  제품 (연결 열) 판매량
이영희 태블릿 119
김철수 태블릿 64
정하늘 스마트폰 103
최지연 태블릿 284
이영희 컴퓨터 237
김철수 스마트폰 150
최지연 태블릿 274
정하늘 스마트폰 57
최지연 컴퓨터 102
김철수 스마트폰 109
최지연 스마트폰 285
박민수 스마트폰 157
최지연 스마트폰 54
이영희 컴퓨터 152
이영희 스마트폰 245
이렇게 데이터 간의 관계 설정이 된 테이블에 RELATED를 사용할 수 있습니다.


2. RELATED 함수의 구문

기본적인 구문은 다음과 같습니다:

RELATED(<ColumnName>)

<ColumnName>은 가져오고자 하는 데이터가 있는 다른 테이블의 열 이름을 의미합니다.

 

예시를 한번 들어볼까요? 

 

1. 가격을 세일즈 테이블로 가져오기

 

먼저, 계산 열 (Calculated column)을 추가합니다

다음과 같은 식을 이용해 줍니다. 

가격 = RELATED('제품'[가격])

 

그러면 가격열이 세일즈 테이블에 추가가 됩니다! 

간단하게 두 테이블에서 원하는 내용을 하나로 합칠 수가 있다는 것이지요! 

 

 

 

 

 

2. 바로 총 가격을 계산하기 

 

앞의 예시가 없이 바로 세일즈 테이블에 총가격을 추가할 수도 있습니다. 

 

총 가격 = '세일즈'[판매량] * RELATED('제품'[가격])

 

이렇게 하면 두 테이블의 value를 무리 없이 적용할 수 있습니다. 그래서 한 테이블에 원하는 값이 다 배치되어 있지 않아도 쉽게 계산을 할 수 있는 것입니다. 


오늘은 RELATED 함수에 대해 알아보았습니다. 

RELATED 함수를 사용할 때 반드시 유의해야 할 점은 "테이블 관계 설정" 이 되어 있는 "일대다" 관계에서만 가능하다는 것!입니다. 

앞으로 이 함수 활용을 통해 좀 더 손쉽게 복잡한 데이터를 계산할 수 있기를 바래요! 

https://www.tistory.com/event/write-challenge-2024

반응형