본문 바로가기

POWER BI

[파워 BI] 테이블생성 및 필터함수

필터 관련 함수 
REMOVEFILTERS

 

  • REMOVEFILTERS는 특정한 테이블이나 컬럼에서 필터를 제거하는 DAX 함수
  • REMOVEFILTERS(테이블이름 or 컬럼이름, 컬럼이름, ...)
  • 앞의 테이블이름이나 컬럼이름은 필터를 제거하고 싶은 테이블이나 컬럼이름이 위치한다.
  • 뒤의 컬럼이름은 옵션사항이다. 

 

KEEPFILTERS

 

 

  • KEEPFILTERS(식)
  • 보고서의 필터를 유지하면서 CALCULATE를 사용하여 CALCULATE의 필터를 씌우고 싶을 때 유용하게 사용

 


 

DISTINCT

 

  • 열이나 테이블의 고유의 값을 나타내는 DAX
  • DISTINCT(열이름, 테이블)
  • 단일혼합테이블에서 관계를 설정하려고 할때 DISTINCT를 사용하여 테이블필드에서 고유의 값만 추출하여 룩업테이블 만들어 관계설정가능

 

*DISTINCT & VALUES 활용하여 상품의 값에 공백이 생긴 것 찾기

1. DISTINCT 활용하여 상품별 고유값 개수 찾기

Count of Product ID(DISTINCT)= COUNTROWS (DISTINCT ('Product' [Product ID])

 

2. VALUES 활용하여 상품별 고유값 개수 찾기(공백포함)

Count of Product ID(VALUES)= COUNTROWS (VALUES ('Product' [Product ID])

3. 공백의 값의 원인을 모델링 값을 통해 살펴본 후, 누락된 값이 있다면 쿼리편집을 통해 새로운 데이터 원본(누락된 값 포함)을 업데이트 필요 


SELECTEDVALUE

 

  • SELECTEDVALUE(열이름, alternateresult) 형식으로 선택된 value를 반환, 선택된 value가 없거나 둘이상이면 alternateresult에 지정한 값을 반환, alternateresult 지정된 값이 없고 공백이면 공백 반환

ALLEXCEPT

 

 

  • 지정된 열을 제외하고 모든 필터를 제거
  • ALLEXCEPT(테이블이름, 열이름, ...)

 

테이블 관련 함수
ALLSELECTED

  • 필터컨텍스트에 표시되는 모든 값을 반환하는 함수
  • ALLSELECTED 사용예시:  CALCULATE ([매출합계]), ALLSELECTED([카테고리]) → 카테고리에 있는 합계 반영

 

SELECTCOLUMNS

 

  • 테이블에서 선택한 열과 DAX에서 선택한 열을 새테이블의 새열로 반환하는 함수 
  • SELECTCOLUMNS(테이블, 이름, Expression), 이름은 " " 로 표시해야한다

<SELECTCOLUMNS 사용예시>

 


ADDCOLUMNS

  • SELECTCOLUMNS과 동일한 기능이나 ADDCOLUMNS는 기존 테이블에 계산 열을 추가하는 방식
  • ADDCOLUMNS(테이블, 이름, Expression), 이름은 " " 로 표시해야한다
  • 달력생성시 열을 추가하는데 사용 

SUMMARIZE
  • 지정된 열의 고유한 조합만 포함하는 테이블을 반환하는 함수

 

테이블생성
ROW

 

  • 단일행이 포함된 테이블을 반환하는 함수
  • ROW(name, expression) name은 "" 로 묶어야하고 expression은 dax 함수
  • name과 expression은 쌍으로 제공되어야 한다

 


DATATABLE

 

새로운 테이블을 생성하는 함수

DATATABLE(열이름1, 데이터타입1 ..., 값1...) 열이름은 "" 안에 넣고, 값은 {} 안으로 넣는다

 

 


GENERATESERIES

 

순차값을 채워진 하나의 열 테이블을 반환

GENERATESERIES(StartValue, EndValue, 증분값) 증분값 미입력시 1로 계산 됨

 

 

TABLE CONSTRUCTOR

 

{}를 활용하여 테이블을 생성하며 열이름은 설정 불가능