퀵 스타트: 30분 내에 DAX 기본 익히기

참고: 사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서가 여기 있습니다.

이 퀵 스타트는 파워 피벗 for Excel이나 SQL Server Data Tools에서 작성된 테이블 형식 모델을 처음 접하는 사용자를 위해 작성되었습니다. 이 퀵 스타트에서는 DAX(데이터 분석 식)를 사용하여 많은 기본 데이터 모델링 및 분석 문제를 해결하는 방법을 쉽고 빠르게 소개합니다. 이 항목에는 개념 정보, 완료할 수 있는 일련의 태스크, 배운 내용을 테스트하는 몇 가지 퀴즈가 포함되어 있습니다. 이 항목을 완료하고 나면 DAX의 가장 기본적인 개념을 잘 이해하게 됩니다.

DAX란?

DAX는 수식 또는 식에서 하나 이상의 값을 계산하고 반환하는 데 사용할 수 있는 함수, 연산자 및 상수의 모음입니다. 간단히 말해서, DAX를 사용하면 모델에 있는 데이터를 사용하여 새로운 정보를 만들 수 있습니다.

DAX가 중요한 이유

통합 문서를 만든 다음 그 통합 문서에 데이터를 가져오기는 쉽습니다. DAX 수식을 사용하지 않고도 중요한 정보를 표시하는 피벗 테이블 또는 피벗 차트를 만들 수 있습니다. 그러나 여러 제품 범주와 여러 다른 날짜 범위의 중요 판매 데이터를 분석해야 하는 경우 또는 다른 데이터 원본의 여러 테이블에 있는 중요한 재고 데이터를 결합해야 하는 경우, DAX 수식은 이러한 기능과 함께 여러 중요한 기능을 제공합니다. 효과적인 DAX 수식을 만드는 방법을 알면 데이터를 최대한 활용할 수 있습니다. 필요한 정보를 얻으면 손익에 영향을 주는 실제 비즈니스 문제를 해결하기 시작할 수 있습니다. 이것이 비즈니스 인텔리전스이며, DAX를 사용하면 비즈니스 인텔리전스를 경험할 수 있습니다.

사전 요구 사항

이미 Microsoft Excel에서 수식을 작성하는 데 익숙할 수 있습니다. 그러면 DAX를 이해하는 데 도움이 되지만 Excel 수식을 작성해 본 경험이 없더라도 여기에 설명된 개념을 숙지하면 바로 DAX 수식을 만들고 실제 BI 문제를 해결할 수 있습니다.

계산에 사용 되는 DAX 수식을 이해 하는 데 집중 하겠습니다. 계산 된 열측정값 (계산 필드 라고도 함) 모두에 대 한 기본 개념을 잘 알고 있는 경우에는 모두 파워 피벗 Help에 설명 되어 있습니다. 또한 Excel 제작 환경 및 도구의 파워 피벗 에 익숙해야 합니다.

예 통합 문서

DAX를 이해하는 가장 좋은 방법은 기본적인 몇 가지 수식을 만들고 실제 데이터에 해당 수식을 사용한 다음 직접 결과를 확인해 보는 것입니다. 여기에 나오는 예제와 작업에는 Contoso Sample DAX Formulas.xlsx 통합 문서가 사용됩니다. http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409에서 해당 통합 문서를 다운로드할 수 있습니다. 이 통합 문서를 컴퓨터에 다운로드한 후에 파워 피벗 창을 엽니다.

이제 시작하면 됩니다.

중요한 세 가지 기본 개념인 구문, 함수 및 컨텍스트를 중심으로 DAX를 설명합니다. 물론 DAX에는 다른 중요한 개념도 있지만 이러한 세 가지 개념을 이해하면 DAX 기술을 만들 수 있는 최고의 기초가 마련됩니다.

구문

고유한 수식을 만들기 전에 DAX 수식 구문부터 살펴보겠습니다. 구문에는 수식을 구성하는 다양한 요소 또는 더 간단하게 표현하자면 수식을 작성하는 방법이 포함됩니다. 예를 들어 FactSales 테이블의 Margin이라는 계산 열에 있는 각 행의 새 데이터(값)를 만드는 데 사용되는 간단한 DAX 수식을 살펴보겠습니다. 수식 텍스트 색은 이해를 돕기 위한 목적으로만 사용되었습니다.

계산 열 수식

이 수식의 구문에는 다음과 같은 요소가 포함됩니다.

  1. 등호 연산자(=)는 수식의 시작을 나타내며 이 수식이 계산되면 결과 또는 값을 반환합니다. 값을 계산하는 수식은 모두 등호로 시작합니다.

  2. 참조되는 열 [SalesAmount]는 빼려는 원래 값을 포함합니다. 수식의 열 참조는 항상 대괄호([])로 묶습니다. 셀을 참조하는 Excel 수식과 달리 DAX 수식은 항상 열을 참조합니다.

  3. 빼기(-) 수학 연산자.

  4. 참조되는 열 [TotalCost]는 [SalesAmount] 열 값에서 빼려는 값을 포함합니다.

DAX 수식을 읽는 방법을 이해할 때 각 요소를 평소에 생각하고 말하는 언어로 나누어 보면 도움이 됩니다. 예를 들어 이 수식을 다음과 같이 읽을 수 있습니다.

FactSales표에서 여백 계산 열의 각 행에 대해[salesamount] 열의 값에서 [TotalCost] 열의값을 빼서 (=) 값을 계산 합니다 (=).

다음은 측정값에 사용 되는 수식의 다른 종류의 수식을 살펴보겠습니다.

계산 열 수식

이 수식은 다음 구문 요소를 포함합니다.

  1. 판매 금액의 측정값 이름 합계입니다. 측정값에 대 한 수식에는 측정값 이름, 콜론, 계산 수식이 차례로 포함 될 수 있습니다.

  2. 등호 연산자(=)는 계산 수식의 시작을 나타내고 계산 결과를 반환합니다.

  3. SUM 함수는 [SalesAmount] 열에 있는 모든 숫자를 더합니다. 나중에 함수에 대해 더 자세히 알아보겠습니다.

  4. 하나 이상의 인수를 묶는 괄호 (). 모든 함수에는 인수가 하나 이상 필요합니다. 인수는 함수에 값을 전달합니다.

  5. 참조되는 테이블 FactSales.

  6. FactSales 테이블에서 참조되는 열 [SalesAmount]. SUM 함수는 이 인수를 사용하여 합계를 집계할 열을 인식합니다.

이 수식은 다음과 같이 읽을 수 있습니다.

의 경우 측정값판매 금액의 합계를 계산 하 고 (=) 값의 합계를 계산 합니다. FactSales테이블.

이 측정값은 피벗 테이블 필드 목록의 값 끌어 놓기 영역에 있는 경우, 피벗 테이블의 각 셀에 정의 된 값을 계산 하 고 반환 합니다 (예: USA의 휴대폰).

이 수식을 Margin 계산 열에 사용한 수식과 비교했을 때 몇 가지 다른 점이 있습니다. 특히 SUM 함수를 도입했습니다. 함수는 숫자, 날짜, 텍스트 등에 대한 복잡한 계산과 조작을 쉽게 수행할 수 있도록 미리 작성된 수식입니다. 나중에 함수에 대해 더 자세히 알아보겠습니다.

이전 여백 계산 된 열과 달리, [salesamount] 열이 해당 열이 속한 테이블 FactSales 앞에 표시 됩니다. 테이블 이름 뒤에 열 이름이 포함 된다는 것을 나타내는 정규화 된 열 이름 이라고 합니다. 같은 테이블에서 참조 하는 열은 수식에 테이블 이름을 포함할 필요가 없습니다. 이렇게 하면 많은 열을 보다 짧고 읽기 쉽게 참조 하는 긴 수식이 작성 될 수 있습니다. 그러나 동일한 테이블에 있는 경우에도 항상 측정값 수식에 테이블 이름을 포함 하는 것이 좋습니다.

참고: 테이블의 이름에 공백, 예약 키워드 또는 허용되지 않는 문자가 포함된 경우 작은따옴표로 테이블 이름을 묶어야 합니다. 로캘에서 문자 집합을 지원하는지 여부에 관계없이 테이블 이름에 ANSI 영숫자 문자 범위를 벗어나는 문자가 있는 경우에는 테이블 이름을 따옴표로 묶어야 합니다.

수식에는 올바른 구문이 있어야 합니다. 대부분의 경우 구문이 올바르지 않으면 구문 오류가 반환됩니다. 구문이 올바르더라도 반환되는 값이 예상한 값이 아닐 수 있습니다. 파워 피벗 및 SQL Server Data Tools에는 IntelliSense가 포함되어 있으며 이 기능을 사용하여 올바른 요소를 선택하여 올바른 구문의 수식을 만들 수 있습니다.

간단한 수식을 만들어 보겠습니다. 이 태스크를 통해 수식 구문을 더 자세히 이해하고 수식 입력줄에서 IntelliSense 기능이 어떻게 도움이 되는지 알 수 있습니다.

태스크: 계산 열에 대한 간단한 수식 만들기

  1. 파워 피벗 창이 열려 있지 않으면 Excel의 파워 피벗 리본 메뉴에서 파워 피벗을 클릭합니다.

  2. 파워 피벗 창에서 FactSales 테이블(탭)을 클릭합니다.

  3. 맨 오른쪽 열로 스크롤한 다음 열 머리글에서 열 추가를 클릭합니다.

  4. 모델 디자이너 창 위쪽의 수식 입력줄을 클릭합니다.

    PowerPivot 수식 입력줄

    수식 입력줄에 커서가 나타납니다. 수식 입력줄에서는 계산 열 또는 계산 필드에 대한 수식을 입력할 수 있습니다.

    수식 입력줄의 왼쪽에 있는 세 개의 단추에 대해 잠시 살펴보겠습니다.

    수식 입력줄

    수식 입력줄에서 커서가 활성화되면 이 세 개의 단추가 활성화됩니다. 맨 왼쪽 단추인 X는 단순히 취소 단추입니다. 이 단추를 클릭합니다. 수식 입력줄에 더 이상 커서가 나타나지 않고 취소 단추와 확인 표시 단추가 더 이상 나타나지 않습니다. 수식 표시줄을 다시 클릭합니다. 이제 취소 단추와 확인 표시 단추가 다시 나타납니다. 수식을 입력할 준비가 된 것입니다.

    확인 표시 단추는 수식 확인 단추입니다. 수식을 입력하기 전까지는 특별히 역할을 하지 않습니다. 이 단추에 대해서는 잠시 후에 다시 다루겠습니다.

    Fx 단추를 클릭 합니다. 새 대화 상자가 표시 되는 것을 볼 수 있습니다. 함수 삽입 대화 상자 함수 삽입 대화 상자는 DAX 수식 입력을 시작 하는 가장 쉬운 방법입니다. 나중에 측정값을 만드는 경우 수식에 함수를 추가 하지만, 지금은 계산 된 열 수식에 함수를 추가할 필요가 없습니다. 계속 해 서 함수 삽입 대화 상자를 닫습니다.

  5. 수식 입력줄에 등호(=)를 입력한 다음 여는 대괄호([)를 입력합니다. FactSales 테이블에 있는 모든 열이 포함된 작은 창이 나타납니다. 이것이 바로 IntelliSense입니다.

    계산 열은 항상 활성 테이블에 만들어지므로 열 이름 앞에 테이블 이름을 두지 않아도 됩니다. 아래로 스크롤한 다음 [SalesQuantity]를 두 번 클릭합니다. 원하는 열 이름으로 스크롤한 다음 Tab 키를 누를 수도 있습니다.

    이제 커서가 [salesquantity]오른쪽으로 활성화 됩니다.

  6. 공백을 입력하고 빼기 연산자(-)를 입력한 다음 공백을 입력합니다.

  7. 이제 다른 여는 대괄호 [.를 입력 합니다. 이번에는 [returnquantity] 열을 선택 하 고 enter 키를 누릅니다.

    오류가 발생할 경우 구문을 주의 깊게 확인합니다. 필요한 경우 앞에서 설명한 Margin 계산 열의 수식과 비교합니다.

    Enter 키를 눌러 수식을 완성하면 파워 피벗 창 아래쪽의 상태 표시줄에 계산 중이라는 메시지가 표시됩니다. 3백만 개 이상 행에 대해 새 값을 계산한 경우에도 신속하게 처리됩니다.

  8. 열 머리글을 마우스 오른쪽 단추로 클릭하고 NetSales 열의 이름을 바꿉니다.

간단하면서도 매우 강력한 DAX 수식이 만들어졌습니다. FactSales 테이블의 각 행에 대해 NetSales 수식은 [SalesQuantity] 열 값에서 [ReturnQuantity] 열 값을 빼서 값을 계산합니다. 방금 "각 행에 대해"라고 언급했는데 이는 DAX의 또 하나의 매우 중요한 개념(행 컨텍스트)입니다. 나중에 행 컨텍스트에 대해 더 자세히 알아보겠습니다.

DAX 수식에 연산자를 입력할 때 알아야 할 중요 한 점은 사용 하는 인수의 데이터 형식입니다. 예를 들어 = 1 & 2의 수식을 입력 한 경우 반환 되는 값은 텍스트 값 "12"입니다. 이는 앰퍼샌드 (&) 연산자가 텍스트 연결에 대 한 것 이기 때문입니다. DAX는이 수식을 다음과 같이 해석 합니다. 값 1을 텍스트로 가져오고 값 2를 텍스트로 추가 하 여 결과를 계산 합니다. 이제 = 1 + 2를 입력 하는 경우 DAX에서이 수식을 다음과 같이 읽습니다. 숫자 값 1을 가져와서 숫자 값 2를 추가 하 여 결과를 계산 합니다. 결과는 숫자 값인 "3"입니다. DAX는 인수에 사용 되는 열의 데이터 형식을 기반으로 하지 않고 수식의 연산자에 따라 결과 값을 계산 합니다. DAX의 데이터 형식은 매우 중요 하지만이 빠른 시작의 범위를 벗어납니다. dax 수식의 데이터 형식 및 연산자에 대해 자세히 알아보려면 온라인 설명서의 dax 참조 (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409)를 참조 하세요.

다른 방법으로 시도 하겠습니다. 이번에는 수식을 입력 하 고 IntelliSense를 사용 하 여 측정값을 만듭니다. 수식을 완전히 이해 하지 못하는 경우에는 걱정할 필요가 없습니다. 여기서 중요 한 점은 올바른 구문으로 여러 요소를 함께 사용 하 여 수식을 만드는 방법을 설명 하는 것입니다.

작업: 측정값 수식 만들기

  1. FactSales 테이블에서 계산 영역의 빈 셀을 클릭합니다. 이 셀은 파워 피벗 창의 테이블 바로 아래에 있는 빈 셀 영역입니다.

PowerPivot 계산 영역

  1. 수식 입력줄에 Previous Quarter Sales:라는 이름을 입력합니다.

  2. 등호(=)를 입력하여 계산 수식을 시작합니다.

  3. 처음 몇 글자인 CAL을 입력한 다음 사용할 함수를 두 번 클릭합니다. 이 수식에는 CALCULATE 함수를 사용하려고 합니다.

  4. 여는 괄호를 입력하여 CALCULATE 함수에 전달할 인수를 시작합니다.

    여는 괄호를 입력하면 IntelliSense에서 CALCULATE 함수에 필요한 인수를 보여 줍니다. 잠시 후 인수에 대해 배웁니다.

  5. FactSales 테이블의 처음 몇 글자를 입력 한 다음 드롭다운 목록에서 FactSales[Sales]를 두 번 클릭 합니다.

  6. 쉼표(,)를 입력하여 첫 번째 필터를 지정한 다음 PRE를 입력하고 PREVIOUSQUARTER 함수를 두 번 클릭합니다.

    PREVIOUSQUARTER 함수를 선택하면 다른 여는 괄호가 나타나 이번에는 PREVIOUSQUARTER 함수에 대해 다른 인수가 필요함을 나타냅니다.

  7. 처음 몇 글자를 입력 한 다음, ' 치수 날짜[datekey]를 두 번 클릭 합니다.

  8. 두 개의 닫는 괄호를 입력하여 PREVIOUSQUARTER 함수 및 CALCULATE 함수에 전달할 두 인수를 닫습니다.

    수식은 이제 다음과 같이 표시됩니다.

    Previous Quarter Sales:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  9. 수식 입력줄의 수식 확인 단추를 클릭하여 수식의 유효성을 검사합니다. 오류가 발생하면 구문의 각 요소를 확인합니다.

했습니다! 이제 DAX를 사용 하 여 측정값을 만들고이에 대 한 측정값이 쉽지 않습니다. 이 수식은 피벗 테이블 또는 피벗 차트에 적용 된 필터에 따라 이전 분기의 총 판매량을 계산 합니다.

DAX 수식의 몇 가지 중요 한 측면을 소개 했습니다. 먼저이 수식에는 두 개의 함수가 포함 되어 있습니다. PREVIOUSQUARTER 함수는 CALCULATE 함수에 전달 되는 인수로 중첩 됩니다. DAX 수식에는 최대 64 개의 중첩 된 함수를 포함할 수 있습니다. 수식에 중첩 된 함수가 많이 포함 될 가능성은 드뭅니다. 실제로 이러한 수식은 작성 및 디버그 하기가 매우 어려우며 매우 빠르지 않을 수 있습니다.

이 수식에도 필터를 사용했습니다. 필터를 사용하면 계산할 범위를 좁힐 수 있습니다. 이 경우 한 필터를 인수로 선택했으며 이 필터는 실제로 다른 함수입니다. 나중에 필터에 대해 더 자세히 알아보겠습니다.

마지막으로 CALCULATE 함수를 사용했습니다. 이 함수는 DAX의 가장 강력한 함수 중 하나입니다. 데이터 모델을 작성하고 더 복잡한 수식을 만들 때 이 함수를 자주 사용하게 됩니다. 이 퀵 스타트에서는 CALCULATE 함수에 대해 다루지 않지만 DAX에 대해 많이 알게 될수록 이 함수에 특별히 주목해야 합니다.

참고: 일반적으로 DAX 수식에 시간 인텔리전스 함수를 사용하려면 날짜 테이블로 표시 대화 상자를 사용하여 고유 날짜 열을 지정해야 합니다. Contoso DAX Formula Samples.xlsx 통합 문서에서 DimDate 테이블의 DateKey 열이 고유 날짜 열로 선택되어 있습니다.

엑스트라 크레딧

' 만들 수 있는 가장 간단한 DAX 수식 '을 묻는 메시지가 표시 될 수 있습니다. 여기에 대 한 답은 ' 없는 수식 '입니다. 이는 측정값에서 표준 집계 함수를 사용 하 여 수행할 수 있는 작업과 정확히 동일 합니다. 거의 모든 데이터 모델은 집계 된 데이터를 필터링 하 고 계산 해야 합니다. 예를 들어 앞에서 보았던 판매액 측정값 합계의 sum 함수를 사용 하 여 특정 열에 있는 모든 숫자를 더할 수 있습니다. DAX에는 값을 집계 하는 몇 가지 다른 함수도 포함 되어 있습니다. 자동 합계 기능을 사용 하 여 표준 집계를 사용 하 여 수식을 자동으로 만들 수 있습니다.

추가 신용 작업: 자동 합계 기능을 사용 하 여 측정값 수식 만들기

  1. FactSales 테이블에서 ReturnQuantity 열로 스크롤한 다음 열 머리글을 클릭하여 전체 열을 선택합니다.

  2. 탭의 리본 메뉴에 있는 계산 그룹에서 자동 합계 단추를 클릭 합니다.

PowerPivot의 자동 합계

자동 합계옆에 있는 아래쪽 화살표를 클릭 한 다음 평균 을 클릭 합니다 (다른 표준 집계 함수를 사용할 수도 있음).

즉시 returnquantity 이름 평균을 사용 하 여 새 측정값이 생성 되며, 그 뒤에 수식 = Average ([returnquantity])가 옵니다.

아주 쉽게 작업을 마쳤습니다. 물론 만드는 수식이 모두 간단하지는 않을 것입니다. 그러나 자동 합계 기능을 사용하면 표준 집계 계산을 사용하여 쉽고 빠른 수식을 만들 수 있습니다.

이를 통해 DAX 수식에 사용되는 구문을 잘 이해할 수 있게 됩니다. IntelliSense 및 자동 합계와 같은 훌륭한 기능을 통해 쉽고 빠르고 정확한 수식을 만들 수 있다는 사실도 배웠습니다. 구문에 대해 배울 수 있는 내용은 훨씬 더 많이 있습니다. 이러한 내용을 배울 수 있는 좋은 방법이 바로 DAX 참조 또는 SQL 온라인 설명서를 사용하는 것입니다.

구문 QuickQuiz

  1. 수식 입력줄에서 이 단추는 어떤 기능을 합니까?
    함수 단추

  2. DAX 수식에서 열 이름은 항상 무엇으로 묶습니까?

  3. 다음에 대 한 수식을 작성 하는 방법은 다음과
    같습니다. 단가 테이블에서 단위 여백 열에 있는 각 행에 대해 단위 비용 열의 값을 빼서 값을 계산 합니다.UnitPrice 열의값에서

정답은 이 항목의 마지막에 제공됩니다.

함수

함수는 인수라고 하는 특정 값을 특정 순서나 구조로 사용하여 계산을 수행하는 미리 정의된 수식입니다. 인수는 다른 함수, 다른 수식, 열 참조, 숫자, 텍스트, 논리 값(예: TRUE 또는 FALSE) 또는 상수일 수 있습니다.

DAX에는 날짜와 시간, 정보, 논리, 수학, 통계 텍스트 및 시간 인텔리전스 함수와 같은 범주의 함수가 있습니다. Excel 수식의 함수에 대해 잘 알고 있는 경우 DAX에 있는 대부분의 함수가 비슷하게 보일 것입니다. 그러나 DAX 함수는 다음과 같은 방식으로 고유합니다.

  • DAX 함수는 항상 전체 열 또는 테이블을 참조합니다. 테이블 또는 열의 특정 값만 사용하려면 수식에 필터를 추가하면 됩니다.

  • 행 단위로 계산을 사용자 지정해야 하는 경우 DAX에서 제공하는 함수를 통해 현재 행 값이나 관련 값을 일종의 인수로 사용하여 컨텍스트에 따라 달라지는 계산을 수행할 수 있습니다. 나중에 컨텍스트에 대해 더 자세히 알아보겠습니다.

  • DAX에는 값보다는 테이블을 반환하는 함수가 많이 포함되어 있습니다. 테이블은 표시되지 않지만 다른 함수에 입력을 제공하는 데 사용됩니다. 예를 들어 테이블을 검색한 다음 테이블에 있는 고유 값을 세거나 필터링된 테이블 또는 열에 대해 동적 합계를 계산할 수 있습니다.

  • DAX에는 다양한 시간 인텔리전스 함수가 포함되어 있습니다. 이러한 함수를 통해 날짜 범위를 정의하거나 선택하고 이러한 날짜 범위를 기반으로 동적 계산을 수행할 수 있습니다. 예를 들어 병렬 기간에 대한 합계를 비교할 수 있습니다.

수식에 어떤 함수를 사용해야 할지 판단하기 어려운 경우도 있습니다. 파워 피벗 및 SQL Server Data Tools의 테이블 형식 모델 디자이너에는 함수 삽입 기능이 포함되어 있으며, 이 대화 상자에서는 범주별로 함수를 선택할 수 있고 각 함수에 대한 간단한 설명이 제공됩니다.

함수 삽입

함수 삽입 기능을 사용하여 선택할 함수가 있는 새 수식을 만들어 보겠습니다.

태스크: 함수 삽입을 사용하여 수식에 함수 추가

  1. FactSales 테이블에서 가장 오른쪽 열로 스크롤한 다음 열 머리글에서 열 추가를 클릭 합니다.

  2. 수식 입력줄에서 등호(=)를 입력합니다.

  3. 함수 삽입 단추를 클릭 합니다. 함수 삽입 그러면 함수 마법사 대화 상자가 열립니다.

  4. 함수 삽입 대화 상자에서 범주 선택 목록 상자를 클릭 합니다. 기본적으로 모두 선택 되 고 모든 범주에 있는 모든 함수가 아래에 나열 됩니다. 함수를 필터링 하 여 원하는 함수 유형을 쉽게 찾을 수 있도록 하는 함수를 필터링 하는 것이 좋습니다.

  5. 이 수식에서는 다른 테이블에 이미 존재 하는 일부 데이터를 반환 하려고 합니다. 이렇게 하려면 필터 범주에 함수를 사용 합니다. 필터 범주를 클릭 한 다음 함수 선택에서 아래로 스크롤하고 관련 함수를 두 번 클릭 합니다. 확인 을 클릭 하 여 함수 삽입 대화 상자를 닫습니다.

  6. IntelliSense를 사용하여 DimChannel[ChannelName] 열을 찾아 선택합니다.

  7. 수식을 닫은 다음 Enter 키를 누릅니다.

  8. Enter 키를 눌러 수식을 완성하면 파워 피벗 창 아래쪽의 상태 표시줄에 계산 중이라는 메시지가 표시됩니다. 이제 방금 FactSales 테이블에 만든 새 열에 DimChannel 테이블의 채널 정보가 표시됩니다.

  9. Channel 열의 이름을 바꿉니다.

    수식이 =RELATED(DimChannel[ChannelName])와 같이 표시됩니다.

여기에서는 관련 된 DAX의 다른 중요 한 함수를 소개 했습니다. 관련 함수는 다른 테이블의 값을 반환 합니다. 현재 사용 중인 테이블과 가져올 값이 포함 된 테이블 간에 관계가 있는 경우 관련 항목을 사용할 수 있습니다. 물론, 관련 함수는 immense 가능성이 있습니다. 이 경우 FactSales 테이블의 각 판매에 대 한 판매 채널을 포함할 수 있습니다. 이제 피벗 테이블 필드 목록에서 더 쉽게 탐색 하 고 필요한 가장 중요 한 정보만 표시 하도록 하는 데 사용할 수 있습니다. 앞에서 설명한 CALCULATE 함수와 매우 유사 하며, 관련 함수는 매우 중요 하며,이를 여러 번 사용 하 게 될 것입니다.

여기에서 볼 수 있듯이 DAX의 함수를 통해 매우 강력한 수식을 만들 수 있습니다. 단지 함수 기본 사항에 대해서만 다루었습니다. DAX 기술이 개선 되 면 다양 한 함수를 사용 하 여 수식을 만듭니다. 모든 dax 함수에 대 한 세부 정보를 배우는 가장 좋은 위치 중 하나는 dax (데이터 분석 식) 참조입니다.

함수 QuickQuiz

  1. 함수가 항상 참조하는 대상은 무엇입니까?

  2. 수식에 함수를 두 개 이상 포함할 수 있습니까?

  3. 두 테스트 문자열을 하나의 문자열로 연결할 때 어떤 범주의 함수를 사용합니까?

정답은 이 항목의 마지막에 제공됩니다.

컨텍스트

컨텍스트는 이해해야 하는 가장 중요한 DAX 개념 중 하나입니다. DAX에는 두 가지 유형(행 컨텍스트 및 필터 컨텍스트)의 컨텍스트가 있습니다. 먼저 행 컨텍스트에 대해 살펴보겠습니다.

행 컨텍스트

행 컨텍스트는 현재 행이라고 생각하면 가장 쉽습니다. 예를 들어 구문에 대해 배울 때 앞에서 언급했던 Margin 계산 열을 떠올려 보면 =[SalesAmount] - [TotalCost] 수식은 테이블의 각 행에 대한 Margin 열 값을 계산합니다. 각 행의 값은 같은 행에 있는 다른 두 열인 [SalesAmount] 열과 [TotalCost] 열 값에서 계산됩니다. DAX는 컨텍스트를 가지고 있기 때문에 Margin 열의 각 행에 대한 값을 계산할 수 있습니다. 각 행에 대해 [TotalCost] 열 값을 가져와서 [SalesAmount] 열 값에서 이 값을 뺍니다.

아래에 표시된 선택한 셀에서 현재 행의 $49.54라는 값은 [SalesAmount] 열 값인 $101.08에서 [TotalCost] 열 값인 $51.54를 빼서 계산되었습니다.

PowerPivot의 행 컨텍스트

행 컨텍스트가 계산 된 열에만 적용 되는 것은 아닙니다. 행 컨텍스트는 테이블의 단일 행을 식별 하기 위해 필터를 적용 하는 함수가 수식에 있는 경우에도 적용 됩니다. 함수는 필터링 하는 테이블의 각 행에 대해 행 컨텍스트를 본질적으로 적용 합니다. 이러한 유형의 행 컨텍스트는 일반적으로 측정값에 적용 됩니다.

필터 컨텍스트

필터 컨텍스트는 행 컨텍스트에 비해 이해하기가 좀 더 까다롭습니다. 필터 컨텍스트는 결과 또는 값을 결정하도록 계산에 적용되는 하나 이상의 필터라고 생각하면 가장 쉽습니다.

필터 컨텍스트는 행 컨텍스트 대신 존재하는 것이 아니라 행 컨텍스트와 함께 적용됩니다. 예를 들어 계산에 포함할 값의 범위를 좁히기 위해 행 컨텍스트를 지정할 뿐 아니라 해당 행 컨텍스트에 특정 값만 지정(필터링)하는 필터 컨텍스트도 적용할 수 있습니다.

필터 컨텍스트는 피벗 테이블에서 쉽게 볼 수 있습니다. 예를 들어 Values 영역에 TotalCost를 추가한 다음 행 또는 열에 연도 및 지역을 추가하면 지정된 연도 및 지역을 기준으로 데이터의 하위 집합을 선택하는 필터 컨텍스트가 정의됩니다.

필터 컨텍스트가 DAX에 중요 한 이유는 무엇 인가요? 필터 컨텍스트는 피벗 테이블에서 열 및 행 레이블과 슬라이서를 추가 하 여 가장 쉽게 적용할 수 있으므로 모든, 관련, 필터, 계산 등의 함수를 사용 하 여 필터를 정의 하 여 DAX 수식에 필터 컨텍스트를 적용할 수도 있습니다. 다른 측정값과 열을 기준으로 합니다. 예를 들어 StoreSales 라는 측정값에서 다음 수식을 살펴보겠습니다.

수식

이 수식은 지금까지 본 다른 수식에 비해 더 복잡한 것이 사실입니다. 그러나 이 수식을 더 잘 이해할 수 있도록 다른 수식에서와 마찬가지로 이 수식을 나눌 수 있습니다.

이 수식은 다음 구문 요소를 포함합니다.

  1. 측정값 이름 다음에 콜론 StoreSales이 옵니다.

  2. 등호 연산자(=)는 수식의 시작을 나타냅니다.

  3. CALCULATE 함수는 식을 지정된 필터로 수정되는 컨텍스트의 인수로 계산합니다.

  4. 하나 이상의 인수를 묶는 괄호 ()

  5. 식과 동일한 테이블의 측정값 [Sales] Sales 측정값의 식은 = SUM (FactSales [salesamount])입니다.

  6. 각 필터는 쉼표(,)로 구분됩니다.

  7. 참조되는 열 및 특정 값 DimChannel[ChannelName] ="Store"(필터)

이 수식은 "매장" 값을 필터로 사용 하 여 ' 매장 채널 [channelname] 열에 있는 행에 대해서만 계산 되는 판매액 값만 계산 됩니다.

예상할 수 있듯이 수식 내에 필터 컨텍스트를 정의할 수 있는 기능은 매우 강력한 기능이라고 할 수 있습니다. 관련 테이블의 특정 값만 참조할 수 있는 기능은 하나의 예에 불과합니다. 지금 당장 컨텍스트를 모두 이해하지 못했더라도 걱정할 필요가 없습니다. 필요한 수식을 직접 만들어 보면 컨텍스트에 대해 더 잘 이해할 수 있고 DAX에서 컨텍스트가 중요한 이유를 알 수 있습니다.

컨텍스트 QuickQuiz

  1. 컨텍스트의 두 가지 유형은 무엇입니까?

  2. 필터 컨텍스트는 무엇입니까?

  3. 행 컨텍스트는 무엇입니까?

정답은 이 항목의 마지막에 제공됩니다.

요약

이제 dax의 가장 중요 한 개념에 대 한 기본적인 이해가 있으므로 계산 된 열 및 측정값에 대 한 DAX 수식 만들기를 시작할 수 있습니다. DAX는 배워야 하는 데 다소 복잡 하지만 사용 가능한 리소스가 많이 있습니다. 이 항목을 몇 번 읽고 몇 가지 수식으로 작성 한 후에는 자신의 비즈니스 문제를 해결 하는 데 도움이 될 수 있는 다른 DAX 개념 및 수식에 대해 자세히 알아볼 수 있습니다. Microsoft와 선두적인 BI 전문가 모두의 파워 피벗 Help, SQL Server 온라인 설명서, 백서 및 블로그에서 사용할 수 있는 DAX 리소스가 많이 있습니다. DAX 리소스 센터 Wiki (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx)는 시작 하는 데 유용한 장소입니다. 또한 DAX (데이터 분석 식) 참조 도 좋은 리소스입니다. 즐겨찾기에 저장 해야 합니다.

다운로드할 수 있는 "BI 테이블 형식 모델의 DAX" 백서(http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x412)에서는 여기에 소개된 개념뿐 아니라 다른 많은 고급 개념 및 수식에 대해 자세히 살펴볼 수 있습니다. 이 백서에서는 이미 가지고 있는 Contoso DAX Sample Formulas.xlsx 통합 문서를 사용합니다.

QuickQuiz 정답

구문:

  1. 함수 삽입 기능을 엽니다.

  2. 대괄호 []입니다.

  3. =[UnitPrice] - [UnitCost]

함수:

  1. 테이블 및 열입니다.

  2. 예. 수식은 중첩 함수를 최대 64개까지 포함할 수 있습니다.

  3. 텍스트 함수

컨텍스트:

  1. 행 컨텍스트 및 필터 컨텍스트입니다.

  2. 계산에서 단일 값을 결정하는 하나 이상의 필터입니다.

  3. 현재 행입니다.

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×