Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

DAX(데이터 분석 식)는 처음에는 약간 협조적인 소리가 들리지만 이름을 속이지 않습니다. DAX 기본은 정말 이해하기 쉽습니다. 먼저 DAX는 프로그래밍 언어가 아닌 것입니다. DAX는 수식 언어입니다. DAX를 사용하여 계산 열 및 측정값(계산 필드라고도 하는)에 대한 사용자 지정 계산을 정의할 수 있습니다. DAX에는 수식에 Excel 함수와 관계형 데이터로 작업하고 동적 집계를 수행하도록 설계된 추가 함수가 포함됩니다.

DAX 수식 이해

DAX 수식은 수식과 Excel 비슷합니다. 를 만들하려면 같은 기호를 입력하고 함수 이름 또는 식 및 필요한 값 또는 인수를 입력합니다. DAX는 Excel 작업하거나 날짜와 시간을 사용하여 계산을 수행하거나 조건부 값을 만드는 데 사용할 수 있는 다양한 함수를 제공합니다.

그러나 DAX 수식은 다음과 같은 중요한 방법으로 다릅니다.

  • 행별로 계산을 사용자 지정하려는 경우 DAX에는 현재 행 값 또는 관련 값을 사용하여 상황에 따라 다른 계산을 수행할 수 있는 함수가 포함됩니다.

  • DAX에는 단일 값이 아닌 해당 결과로 테이블을 반환하는 함수 유형이 포함됩니다. 이러한 함수는 다른 함수에 대한 입력을 제공하는 데 사용할 수 있습니다.

  • 시간 인텔리전스 함수 DAX에서 날짜 범위를 사용하여 계산을 허용하고 병렬 기간에 걸쳐 결과를 비교할 수 있습니다.

DAX 수식 사용 위치

계산된 c 파워 피벗 f ields에서수식을 만들 수 있습니다.

계산된 열

계산된 열은 기존 테이블 테이블에 추가하는 파워 피벗 있습니다. 열에 값을 붙여넣거나 가져오는 대신 열 값을 정의하는 DAX 수식을 생성합니다. 피벗 테이블에 파워 피벗 테이블(또는 피벗 차트)을 포함하면 계산된 열을 다른 데이터 열처럼 사용할 수 있습니다.

계산된 열의 수식은 여러 열에서 만드는 수식과 Excel. 그러나 Excel 테이블의 다른 행에 대해 다른 수식을 만들 수는 없습니다. 대신 DAX 수식이 전체 열에 자동으로 적용됩니다.

열에 수식이 포함되어 있는 경우 각 행에 대해 값이 계산됩니다. 결과는 수식을 만드는 즉시 열에 대해 계산됩니다. 열 값은 원본 데이터를 새로 고치거나 수동 다시 계산을 사용하는 경우만 다시 계산됩니다.

측정값 및 기타 계산된 열을 기반으로 계산된 열을 만들 수 있습니다. 그러나 계산된 열과 측정값에 동일한 이름을 사용하지 않도록 합니다. 따라서 결과가 혼동될 수 있습니다. 열을 참조할 때, 실수로 측정값을 호출하지 않도록 완전히 자격을 갖춘 열 참조를 사용하는 것이 가장 가장 좋은 것입니다.

자세한 내용은 Power Pivot의 계산 열을 참조하세요.

측정값

측정값은 데이터를 사용하는 피벗테이블(또는 피벗 차트)에서 사용하기 위해 특별히 파워 피벗 수식입니다. 측정값은 COUNT 또는 SUM과 같은 표준 집계 함수를 기반으로 할 수 있습니다. 또는 DAX를 사용하여 자체 수식을 정의할 수 있습니다. 측정값은 피벗테이블의 값 영역에 사용됩니다. 계산된 결과를 피벗 테이블의 다른 영역에 추가하려는 경우 대신 계산된 열을 사용합니다.

명시적 측정값에 대한 수식을 정의하면 피벗테이블에 측정값을 추가하기 전까지 아무 작업도 일어나지 않습니다. 측정값을 추가하면 피벗테이블의 값 영역의 각 셀에 대해 수식이 평가됩니다. 행 및 열 헤더의 각 조합에 대해 결과가 만들어지기 때문에 측정값의 결과는 셀마다 다를 수 있습니다.

만드는 측정값의 정의는 원본 데이터 테이블과 함께 저장됩니다. 이 필드는 피벗 테이블 필드 목록에 나타나며 통합 문서의 모든 사용자가 사용할 수 있습니다.

자세한 내용은 Power Pivot의 측정값을 참조하세요.

수식 표시줄을 사용하여 수식 만들기

파워 피벗 수식 Excel 입력 및 구문 오류를 최소화하기 위해 수식을 더 쉽게 만들고 편집할 수 있는 수식 표시줄 및 AutoComplete 기능을 제공합니다.

표의 이름을 입력하는 경우   표의 이름을 입력하기 시작합니다. 수식 자동완성은 해당 문자로 시작하는 유효한 이름이 포함된 드롭다운 목록을 제공합니다.

열의 이름을 입력하는 경우   대괄호를 입력한 다음 현재 테이블의 열 목록에서 열을 선택합니다. 다른 테이블의 열의 경우 표 이름의 첫 글자를 입력한 다음 자동완성 드롭다운 목록에서 열을 선택합니다.

수식을 빌드하는 방법에 대한 자세한 내용은 Power Pivot에서계산에 대한 수식 만들기를 참조합니다.

팁 사용에 대한 데이터

중첩된 함수를 사용하여 기존 수식 중간에 수식 자동완성(Formula AutoComplete)을 사용할 수 있습니다. 삽입 지점 바로 앞의 텍스트는 드롭다운 목록에 값을 표시하는 데 사용하며 삽입 지점 이후의 모든 텍스트는 변경되지 않습니다.

상수에 대해 만든 정의된 이름은 AutoComplete 드롭다운 목록에 표시되지 않지만 입력할 수 있습니다.

파워 피벗 함수의 닫는 괄호를 추가하거나 괄호와 자동으로 일치하지 않습니다. 각 함수가 구문적으로 올바른지 또는 수식을 저장하거나 사용할 수 없는지 확인해야 합니다. 

수식에서 여러 함수 사용

함수를 중첩할 수 있습니다. 즉, 한 함수의 결과를 다른 함수의 인수로 사용할 수 있습니다. 계산된 열에 최대 64개 수준의 함수를 중첩할 수 있습니다. 그러나 중첩하면 수식을 만들거나 문제를 해결하는 것이 어려울 수 있습니다.

많은 DAX 함수는 중첩 함수로만 사용하도록 디자인됩니다. 이러한 함수는 결과적으로 직접 저장할 수 없는 테이블을 반환합니다. 테이블 함수에 대한 입력으로 제공해야 합니다. 예를 들어 SUMX, AVERAGEX 및 MINX 함수는 모두 테이블을 첫 번째 인수로 요구합니다.

참고: 함수 중첩에 대한 일부 제한은 열 간 종속성에 의해 필요한 많은 계산에 의해 성능에 영향을 주지 않도록 측정값 내에 존재합니다.

DAX 함수 및 Excel 비교

DAX 함수 라이브러리는 Excel 함수 라이브러리를 기반으로 하지만 라이브러리에는 많은 차이점이 있습니다. 이 섹션에서는 Excel 함수와 DAX 함수 간의 차이점과 유사성에 대해 설명합니다.

  • 많은 DAX 함수는 이름과 일반 동작이 Excel 다른 유형의 입력을 수행하기 위해 수정되었습니다. 경우에 따라 다른 데이터 형식을 반환할 수 있습니다. 일반적으로 수식에서 DAX 함수를 Excel 수식에 Excel 수식을 파워 피벗 수 없습니다.

  • DAX 함수는 셀 참조 또는 범위를 참조로 사용하지 않지만 DAX 함수는 열 또는 테이블을 참조로 사용합니다.

  • DAX 날짜 및 시간 함수는 날짜 시간 데이터 형식을 반환합니다. 반면 날짜 및 Excel 함수는 일련 번호로 날짜를 나타내는 정수를 반환합니다.

  • 많은 새 DAX 함수는 값 테이블을 반환하거나 값 테이블을 입력으로 기반으로 계산합니다. 반면에 Excel 테이블을 반환하는 함수가 없지만 일부 함수는 배열을 사용하여 작업할 수 있습니다. 전체 테이블 및 열을 쉽게 참조하는 기능은 에서 파워 피벗.

  • DAX는 배열 및 벡터 룩업 함수와 유사한 새 Excel. 그러나 DAX 함수는 테이블 간에 관계가 설정되어야 합니다.

  • 열의 데이터는 항상 동일한 데이터 형식이 될 것으로 예상됩니다. 데이터가 동일한 형식이 아닌 경우 DAX는 모든 값을 가장 잘 수용하는 데이터 형식으로 전체 열을 변경합니다.

DAX 데이터 형식

다양한 데이터 형식을 지원할 수 있는 파워 피벗 데이터 원본에서 데이터 모델로 데이터를 가져올 수 있습니다. 데이터를 가져오거나 로드한 다음, 계산 또는 피벗테이블에서 데이터를 사용하는 경우 데이터는 데이터 형식 중 파워 피벗 변환됩니다. 데이터 형식 목록은 데이터 모델의 데이터 형식을 참조하세요.

테이블 데이터 형식은 많은 새 함수에 대한 입력 또는 출력으로 사용되는 DAX의 새 데이터 형식입니다. 예를 들어 FILTER 함수는 테이블을 입력으로 사용하며 필터 조건을 충족하는 행만 포함하는 다른 테이블을 출력합니다. 테이블 함수와 집계 함수를 결합하여 동적으로 정의된 데이터 집합을 통해 복잡한 계산을 수행할 수 있습니다. 자세한 내용은 Power Pivot의 집계를 참조하세요.

수식 및 관계형 모델

파워 피벗 창은 여러 데이터 테이블을 사용하여 작업하고 관계형 모델의 테이블을 연결할 수 있는 영역입니다. 이 데이터 모델 내에서 테이블은 관계에 따라 서로 연결되어 다른 테이블의 열과 상관 관계를 만들고 더 흥미로운 계산을 만들 수 있습니다. 예를 들어 관련 테이블의 값을 합산하는 수식을 만든 다음 해당 값을 단일 셀에 저장할 수 있습니다. 또는 관련 테이블의 행을 제어하기 위해 테이블 및 열에 필터를 적용할 수 있습니다. 자세한 내용은 데이터 모델의 테이블 간의 관계를 참조하세요.

관계를 사용하여 테이블을 연결할 수 있기 때문에 피벗 테이블에는 서로 다른 테이블의 여러 열의 데이터도 포함할 수 있습니다.

그러나 수식은 전체 테이블 및 열과 함께 작동할 수 있기 때문에 계산에서와 다르게 계산을 디자인해야 Excel.

  • 일반적으로 열의 DAX 수식은 항상 열의 전체 값 집합에 적용됩니다(단 또는 셀 몇 개에만 해당하지 않습니다).

  • 파워 피벗 테이블은 항상 각 행의 열 수가 같아야 합니다. 열의 모든 행에는 동일한 데이터 형식이 포함되어야 합니다.

  • 테이블이 관계에 의해 연결되어 있는 경우 키로 사용되는 두 열에 대부분의 경우 일치하는 값이 있는지 확인해야 합니다. 파워 피벗 무결성을 적용하지 않는 경우 키 열에 일치하지 않는 값이 있으며 여전히 관계를 만들 수 있습니다. 그러나 비어 있는 값 또는 일치하지 않는 값이 있는 경우 수식의 결과와 피벗테이블 모양에 영향을 줄 수 있습니다. 자세한 내용은 Power Pivot 수식의 보기를 참조하세요.

  • 관계를 사용하여 테이블을 연결하면 수식이 평가되는 범위 또는 context를 확대합니다. 예를 들어 피벗 테이블의 수식은 피벗 테이블의 필터 또는 열 및 행 제목의 영향을 받을 수 있습니다. 컨텍스트를 조작하는 수식을 작성할 수 있지만 컨텍스트는 예측할 수 없는 방식으로 결과가 변경될 수도 있습니다. 자세한 내용은 DAX 수식의 컨텍스트를 참조하세요.

수식 결과 업데이트

데이터 r efresh 및 다시 계산은 복잡한 수식, 많은 양의 데이터 또는 외부 데이터 원본에서 얻은 데이터를 포함하는 데이터 모델을 디자인할 때 이해해야 하는 두 개의 별도하지만 관련 작업입니다.

새로 고침 데이터는 외부 데이터 원본의 새 데이터로 통합 문서의 데이터를 업데이트하는 프로세스입니다. 지정한 간격으로 데이터를 수동으로 새로 고칠 수 있습니다. 또는 통합 문서가 웹 사이트에 게시된 SharePoint 외부 원본에서 자동 새로 고침을 예약할 수 있습니다.

다시 계산은 수식 자체에 대한 변경 내용을 반영하고 해당 변경 내용을 반영하기 위해 수식의 결과를 업데이트하는 프로세스입니다. 다시 계산은 다음과 같은 방법으로 성능에 영향을 줄 수 있습니다.

  • 계산된 열의 경우 수식을 변경할 때마다 항상 전체 열에 대해 수식의 결과를 다시 계산해야 합니다.

  • 측정값의 경우 측정값이 피벗테이블의 컨텍스트에 배치될 때까지 수식의 결과가 계산되지 피벗 차트. 데이터의 필터에 영향을 주는 행 또는 열 제목을 변경하거나 피벗 테이블을 수동으로 새로 고칠 때도 수식이 다시 계산됩니다.

수식 문제 해결

수식 작성 시 오류

수식을 정의할 때 오류가 발생하는 경우 수식에 구문 오류,시맨틱 오류 또는계산 오류가 포함될 수 있습니다.

구문 오류는 가장 쉽게 해결할 수 있습니다. 일반적으로 누락된 괄호 또는 콤마가 있습니다. 개별 함수의 구문에 대한 도움말은 DAX 함수 참조를 참조합니다.

다른 유형의 오류는 구문이 올바른 경우 발생하지만 참조된 값 또는 열이 수식의 컨텍스트에서 의미가 없습니다. 이러한 시맨틱 및 계산 오류는 다음 문제로 인해 발생할 수 있습니다.

  • 수식은 기존 열, 테이블 또는 함수를 참조합니다.

  • 수식은 올바른 것으로 보이지만 데이터 엔진에서 데이터를 인입하면 형식 불일치가 발견되고 오류가 발생합니다.

  • 수식은 함수에 잘못된 매개 변수 수 또는 형식을 전달합니다.

  • 수식은 오류가 있는 다른 열을 참조하므로 해당 값이 유효하지 않습니다.

  • 수식은 처리되지 않은 열을 참조합니다. 즉, 메타데이터가 있지만 계산에 사용할 실제 데이터가 없습니다.

처음 4개의 경우 DAX는 잘못된 수식을 포함하는 전체 열에 플래그를 지정합니다. 마지막 경우 DAX는 열을 회색으로 표시하여 열이 처리되지 않은 상태인 것을 나타냅니다.

열 값의 순위를 정하거나 순서를 정할 때 잘못되거나 비정상적인 결과

값 NaN(숫자 아우)이 포함된 열의 순위를 매기거나 순서를 매기면 잘못되거나 예기치 않은 결과가 발생할 수 있습니다. 예를 들어 계산이 0을 0으로 나누면 NaN 결과가 반환됩니다.

수식 엔진이 숫자 값을 비교하여 순서 및 순위를 수행하기 때문에입니다. 그러나 NaN은 열의 다른 숫자와 비교할 수 없습니다.

올바른 결과를 보장하기 위해 IF 함수를 사용하여 조건부 문을 사용하여 NaN 값을 테스트하고 숫자 0 값을 반환할 수 있습니다.

Analysis Services Tabular 모델 및 DirectQuery 모드와의 호환성

일반적으로 빌드하는 DAX 수식은 파워 피벗 테이블형 모델과 완전히 호환됩니다. 그러나 분석 서비스 인스턴스로 파워 피벗 모델을 마이그레이션한 다음 DirectQuery 모드로 모델을 배포하는 경우 몇 가지 제한 사항이 있습니다.

  • DirectQuery 모드에서 모델을 배포하는 경우 일부 DAX 수식은 다른 결과를 반환할 수 있습니다.

  • 일부 수식은 관계형 데이터 원본에 대해 지원되지 않는 DAX 함수를 포함하기 때문에 DirectQuery 모드로 모델을 배포할 때 유효성 검사 오류가 발생할 수 있습니다.

자세한 내용은 2012 BooksOnline의 Analysis Services 테이블형 모델링 설명서를 SQL Server 참조하세요.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×