티스토리 뷰

 

DAX 쿼리 보기(DAX Query View) (2)

 

이전 에서 DAX 쿼리 보기에 대한 일반적인 내용으로 기본 작업과 빠른 쿼리에 대한 내용을 확인해보았습니다. 이번 글에서는 EVEALUTE 구문을 통해 DAX 쿼리를 조금 더 자세히 확인해보겠습니다.

이전 글에서 살펴본 것처럼 DAX 쿼리 보기는 측정값이나 계산 열을 테스트하고, 결과를 확인하기 위한 용도입니다. 단순 데이터를 조회하기 위해서는 테이블이나 행렬로 시각화를 하는 것이 더 효과적입니다.

EVEALUTE 구문은 T-SQL 구문에서 SELECT 구문 영역으로 이해하면 됩니다. T-SQL이 익숙하지 않다면 데이터를 조회하는 영역에 해당한다고 이해해주세요. EVEALUTE 구문은 반드시 지정해야 하는 필수 사항입니다. DEFINE 구문은 데이터를 조회할 때 사용할 측정값, 열, 변수, 테이블을 미리 선언하는 영역으로 선택 사항입니다.

 

EVEALUTE 구문은 테이블 식을 포함하며 그 결과를 반환하는 함수입니다.

EVALUATE <table>

 

EVEALUTE 구문에서 측정값이나 열을 테스트하고 결과를 확인하는데 가장 많이 사용하는 함수는 SELECTCOLUMNS, SUMMARIZECOLUMNS입니다. EVEALUTE 구문과 관련된 구문으로는 ORDER BY, STAT AT 이 있습니다. 결과를 테스트하기 위한 TOPN, DISTINCT 등 테이블 식을 사용할 수도 있습니다.

간단히 EVEALUTE 구문 테스트를 아래와 같이 해볼 수 있습니다. 테이블 명을 추가하고 실행합니다.

 

EVALUATE

    '제품'

해당 테이블을 조회하여 결과를 제공합니다.

ORDER BY 컬럼명을 추가하게 되면 결과값이 정렬되는 것을 확인할 수 있습니다. 맨 끝에 ASC, DESC를 추가하여 정렬방식을 정할 수 있습니다.

 

EVALUATE

    '제품'

    ORDER BY [제품명]

 

제품 테이블의 모든 열이 아닌 일부 열만 조회하려면 SELECTCOLUMNS을 아래와 같은 방식으로 사용하면 됩니다.

 

EVALUATE

    SELECTCOLUMNS(

        '제품',

        "ID", '제품'[ProductKey],

        "제품명", '제품'[제품명],

        '제품'[대분류],

        '제품'[Color]

    )

    ORDER BY [제품명]

 

위 구문에서 다른 테이블의 측정값이나 열을 추가하여 조회할 수는 없습니다.  전체 제품이 나오므로 제품ID 정렬된 상위 10개 제품만 보이게 하고 싶을때는 TOPN 함수를 사용하면 됩니다.

 

EVALUATE

    SELECTCOLUMNS(

        TOPN(

            10,

            '제품',

            '제품'[ProductKey],

            ASC

        ),

        "ID",

        '제품'[ProductKey],

        "제품명",

        '제품'[제품명],

        '제품'[대분류],

        '제품'[Color]

    )

    ORDER BY [제품명]

 

TOPN 함수 대신 FILTER 함수를 이용하여 행을 필터하여 테이블 식을 반환할 수도 있습니다.

 

EVALUATE

    SELECTCOLUMNS(

        FILTER('제품', [대분류] ="BIKES"),

        "ID",

        '제품'[ProductKey],

        "제품명",

        '제품'[제품명],

        '제품'[대분류],

        '제품'[Color]

    )

    ORDER BY [제품명]

 

막대형 차트에 국가, 제품 대분류, 매출총액을 시각화하는 경우가 상당히 많습니다. 그런 경우를 테스트하기 위해서는 SUMMARIZECOLUMNS을 이용하여 처리할 수 있습니다.

 

EVALUATE

    SUMMARIZECOLUMNS(

        '지역'[국가]

        ,'제품'[대분류]

        ,"매출종액", SUM('매출'[SalesAmount])

    )

    ORDER BY '지역'[국가]

집계 함수를 사용하지 않고 측정값을 사용하여도 됩니다.

 

EVALUATE

    SUMMARIZECOLUMNS(

        '지역'[국가],

        '제품'[대분류],

        "매출종액", [Total Sales]

    )

    ORDER BY '지역'[국가]

 

 

테이블 식을 포함하며 그 결과를 반환하는 EVEALUTE 구문을 간략히 확인해보았는데, 다음 글에서는 측정값과 DEFINE 구문을 통해 DAX 쿼리 보기를 조금 더 자세히 확인해보겠습니다.

 

DAX 쿼리 보기(DAX Query View) (1)

DAX 쿼리 보기(DAX Query View) (2)

DAX 쿼리 보기(DAX Query View) (3)

DAX 쿼리 보기(DAX Query View) (4)

'Microsoft Faric > Power BI' 카테고리의 다른 글

DAX 쿼리 보기(DAX Query View) (4)  (1) 2024.01.22
DAX 쿼리 보기(DAX Query View) (3)  (1) 2024.01.15
Power BI Update – 2023년 12월  (1) 2023.12.26
DAX 쿼리 보기(DAX Query View) (1)  (1) 2023.12.18
계산 그룹  (0) 2023.12.11
댓글