다음을 통해 공유


DAX 쿼리 보기 작업

Power BI의 DAX 쿼리 보기를 사용하면 의미 체계 모델에서 DAX(Data Analysis Expressions) 쿼리를 보고 작업할 수 있습니다.

DAX 쿼리

Power BI에서 DAX 수식은 데이터에 대한 다양한 유형의 계산을 정의하는 데 사용되지만 역할 보안을 정의하는 데도 사용할 수 있습니다. 반면에 DAX 쿼리는 모델에서 데이터를 반환하는 데 사용될 수 있습니다.

DAX 쿼리는 이미 가지고 있는 데이터를 표시할 수 있다는 점에서 SQL 쿼리와 유사합니다. DAX 쿼리는 모델의 항목이나 보고서의 시각적 개체를 만들지 않습니다.

DAX 쿼리에는 두 가지 주요 부분이 있습니다.

  • EVALUATE 문, 필수입니다. 쿼리에서 반환되는 데이터와 방법을 지정합니다.
  • DEFINE 문, 선택 사항입니다. 이를 통해 쿼리에서 사용할 측정값과 같은 DAX 수식을 정의할 수 있습니다. DAX 쿼리 DEFINE MEASURE를 사용하여 만들어지거나 업데이트된 측정값은 DAX 쿼리 컨텍스트에서만 실행되는 DAX 쿼리 범위 측정값입니다. CodeLens 업데이트 모델 작업 또는 변경 내용으로 모델 업데이트 단추를 사용하여 DAX 쿼리 범위 측정값을 모델에 추가할 수 있습니다.

쿼리가 사용되는 방법에 대해 자세히 알아보려면 DAX 참조의 DAX 쿼리를 참조하세요.

DAX 쿼리 보기 열기

Power BI Desktop에서 왼쪽에 있는 DAX 쿼리 보기 아이콘을 선택합니다.

Power BI Desktop의 DAX 쿼리 뷰 아이콘 스크린샷

Power BI 서비스 또는 Fabric 포털 작업 영역의 상황에 맞는 메뉴에서 DAX 쿼리 작성을 선택합니다.

Power BI 서비스 또는 Fabric 포털 의미 체계 모델 세부 정보 페이지의 맨 위에서 DAX 쿼리 작성을 선택합니다.

DAX 쿼리 보기 레이아웃

Power BI Desktop의 DAX 쿼리 보기를 자세히 살펴보겠습니다.

DAX 쿼리 뷰 레이아웃을 보여 주는 다이어그램

DAX 쿼리 보기에는 다음 요소가 있습니다.

리본

DAX 쿼리 보기 리본에는 DAX 쿼리를 작성할 때 사용되는 일반적인 작업이 있습니다.

DAX 쿼리 뷰 리본의 스크린샷

리본의 요소를 자세히 살펴보겠습니다.

쿼리 서식 지정

쿼리 형식 지정 리본 단추를 선택하거나 SHIFT+ALT+F를 사용하여 현재 쿼리 형식을 지정합니다. 쿼리는 탭으로 들여쓰기가 적용됩니다. DAX 함수가 대문자로 변경되고 줄이 추가됩니다. DAX 쿼리 서식을 지정하는 것이 모범 사례로 간주되며 DAX 쿼리 가독성이 개선됩니다. 또한 서식은 쿼리 섹션을 축소 및 확장할 수 있는 방식으로 들여쓰기가 적용됩니다.

쿼리 서식 단추의 스크린샷

주석 처리/주석 처리 제거

주석 처리 리본 단추를 선택하면 커서가 있는 줄의 시작 부분이나 선택한 모든 줄에 이중 백슬래시(//)를 추가할 수 있습니다. 그러면 해당 줄이 주석 처리되고 DAX 쿼리가 실행될 때 해당 줄은 무시됩니다.

주석 처리 제거 리본 단추를 선택하여 커서가 있는 줄의 시작 부분 또는 선택한 모든 줄의 시작 부분에 있는 //을 제거합니다. 여러 줄 주석 표기가 추가된 줄에서는 작동하지 않습니다.

CTRL+/를 사용하여 주석 처리와 주석 처리 제거 사이를 전환할 수도 있습니다.

DAX 쿼리 뷰 리본의 주석 처리 및 주석 처리 제거 단추 스크린샷

찾기 및 바꾸기

찾기 리본 단추를 선택하거나 CTRL+F를 사용하여 DAX 쿼리 편집기에서 텍스트를 검색합니다. 찾기에는 대/소문자 일치, 전체 단어 일치, 정규식 사용 및 현재 쿼리에 대한 모든 일치 항목 순환 옵션이 포함되어 있습니다. 찾기 상자 왼쪽에 있는 펼침 단추를 선택하여 바꾸기를 입력할 수도 있습니다.

DAX 쿼리 뷰 리본의 찾기 단추 스크린샷

리본에서 바꾸기 단추를 선택하거나 CTRL+H를 사용하여 DAX 쿼리 편집기에서 텍스트를 검색하고 바꿉니다. 바꾸기에는 사례를 보존하고 한 번에 하나씩 또는 한꺼번에 바꾸는 옵션이 포함되어 있습니다.

DAX 쿼리 뷰 리본의 바꾸기 기능 스크린샷

명령 팔레트

명령 팔레트 리본 단추를 선택하거나 CTRL+ALT+P를 사용하여 명령 팔레트 상자를 엽니다. 추가 DAX 쿼리 편집기 작업을 쿼리하고 관련 바로 가기 키를 확인할 수 있습니다.

DAX 쿼리 뷰 명령 팔레트의 스크린샷

명령 모음

DAX 쿼리 보기 명령 모음에는 DAX 쿼리 보기를 사용할 때 가장 중요한 작업이 포함되어 있습니다.

실행 및 취소

실행 단추는 DAX 쿼리 또는 선택한 쿼리 줄을 실행합니다. 실행 후 쿼리 상태는 아래쪽 상태 표시줄에 나타납니다.

DAX 쿼리 뷰 명령 모음의 스크린샷

쿼리가 실행 중이면 단추는 실행 중인 쿼리를 중지하는 데 사용할 수 있는 취소 단추가 됩니다.

DAX 쿼리 뷰 취소의 스크린샷

변경 내용으로 모델 업데이트

변경 내용으로 모델 업데이트 단추를 누르면 DAX 쿼리 범위 측정값의 DAX 수식으로 모델 측정값을 추가하거나 덮어씁니다. DAX 쿼리 범위 측정값은 DEFINE MEASURE 블록에 있는 측정값입니다. 또는 각 측정값 위에 나타나는 CodeLens 텍스트를 사용하여 모델 측정값을 개별적으로 추가하거나 덮어쓰도록 선택할 수 있습니다.

DAX 쿼리 편집기

DAX 쿼리 보기에는 쿼리를 작성하고 편집할 수 있는 쿼리 편집기가 포함되어 있습니다. 이는 더 큰 DAX 수식 입력줄 그 이상입니다. VS Code에서 사용할 수 있는 DAX 편집기와 더 강력하고 유사점이 많습니다.

DAX 쿼리 편집기에는 다음 요소가 있습니다.

제안 및 Intellisense

쿼리를 입력하고 편집하는 동안 제안 및 Intellisense에 대한 도움말을 확인합니다.

DAX 쿼리 편집기 intellisense의 스크린샷

강조 표시된 intellisense를 추가하려면 Enter 또는 Tab 키를 사용하고, intellisense 옵션을 추가하지 않고 다른 줄로 이동하려면 Shift+Enter 또는 Alt+Enter를 사용합니다. ESC 키를 선택하면 모든 오버레이가 닫힙니다.

측정값 수식을 보려면 마우스로 가리킵니다.

측정값이 DAX 쿼리에 포함된 경우 측정값을 마우스로 가리키면 수식, 이름 및 설명을 확인할 수 있습니다.

측정값 수식 기능을 보기 위해 마우스로 가리킨 스크린샷

측정 전구 바로 가기를 보려면 선택합니다.

DEFINE 문이 없는 쿼리에서 EVALUATE 문에 있는 측정값을 선택하면 바로 가기 전구기 표시됩니다. 참조 측정값 DAX 수식 유무에 관계없이 이 측정값의 수식을 사용하여 DEFINE 문을 생성하려면 정의 또는 참조로 정의를 선택하세요.

CodeLens를 사용하여 모델 측정값 업데이트

DEFINE MEASURE를 사용하면 먼저 측정값을 DAX 쿼리 범위 측정값으로 만들 수 있으므로 측정값을 만들 때 유용합니다. 하나의 창에서 여러 측정값을 편집한 다음 쿼리를 실행하여 특정 그룹별 열을 사용하여 측정값 전체 또는 일부의 결과를 확인할 수 있습니다. 보고서 보기에서 테이블 시각적 개체를 만들고 측정값 수식 간에 전환할 필요가 없습니다. CodeLens는 측정값이 모델에 이미 존재하는 경우 프롬프트를 제공하거나, 존재하지 않는 경우 추가할 수 있도록 하여 한 단계 더 발전합니다.

CodeLens는 DEFINE MEASURE 블록 위에 표시되는 클릭 가능한 텍스트입니다. 아직 모델에 없는 DAX 쿼리 범위 측정값의 경우 모델 업데이트: 새 측정값 추가 CodeLens가 나타나 클릭하면 모델 측정값이 추가됩니다. 모델에 이미 존재하는 DAX 쿼리 범위 측정값의 경우 DAX 범위 측정값 DAX 수식이 다르면 모델 업데이트: 측정값 덮어쓰기 CodeLens가 표시되며, 클릭하면 모델 측정값이 이 DAX 수식으로 변경됩니다.

또는 명령 막대에서 변경 내용으로 모델 업데이트 단추를 클릭하여 여러 측정값을 한 번에 추가하거나 덮어쓸 수 있습니다.

업데이트 워크플로 측정

전구 바로 가기와 CodeLens는 전체 워크플로에서 함께 사용할 수 있습니다.

  1. 측정값의 바로 가기 메뉴에서 빠른 쿼리를 선택한 다음 평가를 선택하면 새 쿼리 탭에 쿼리가 만들어집니다.
  2. 쿼리에서 측정값을 선택하여 정의하거나 참조로 정의하고 DEFINE 문을 추가합니다.
  3. 측정값에 대한 식 업데이트를 수행한 다음 DAX 쿼리를 실행하여 변경 내용을 표시합니다.
  4. 변경 내용이 예상대로 나타나면 CodeLens 업데이트 모델: 측정값 덮어쓰기를 사용하여 모델에 다시 저장합니다.

워크플로를 이해하는 보다 시각적인 방법은 다음과 같습니다.

워크플로의 다이어그램

결과 그리드

쿼리가 실행되면 결과가 결과 표에 표시됩니다.

결과 표의 스크린샷

쿼리 편집기에 EVALUATE 문이 두 개 이상 있으면 여러 결과가 반환될 수 있습니다. 결과 드롭다운을 사용하여 결과 간에 전환할 수 있습니다. 복사 단추는 전체 그리드를 헤더가 있는 탭으로 구분된 테이블로 복사합니다. 그리드 크기는 오른쪽 위 모서리 화살표를 사용하거나 결과 그리드와 쿼리 편집기 사이의 경계에 있는 커서를 사용하여 수동으로 조정할 수 있습니다.

쿼리 결과에 오류가 발생하면 결과 표에 오류가 표시됩니다.

결과 표의 오류 메시지 스크린샷

복사 단추를 누르면 오류가 클립보드로 전송됩니다. 오류의 시작 부분은 쿼리에서 오류가 있는 위치를 나타냅니다. 위 이미지에서 오류는 다음과 같습니다.

"쿼리(4, 23) "판매 2"에 대한 값을 확인할 수 없습니다. 열이 존재하지 않거나 이 열에 대한 현재 행이 없습니다."

그리고 "Query(4, 23)"은 오류가 4행과 문자 23에 있음을 나타냅니다.

쿼리 탭

DAX 쿼리 보기에는 이름을 바꾸거나 제거할 수 있는 여러 쿼리 탭이 있을 수 있습니다. 또한 쿼리의 현재 상태도 표시됩니다.

쿼리 탭의 스크린샷

각 탭에는 상태 표시기가 포함되어 있습니다.

  • 쿼리가 실행되기 전에는 표시기가 표시되지 않습니다.
  • 녹색 확인 표시는 성공적인 쿼리 실행을 나타냅니다.
  • 빨간색 십자가는 오류가 발생했음을 나타냅니다.
  • 원 안의 채워진 사각형은 쿼리가 취소되었음을 나타냅니다.
  • 클록은 쿼리가 실행 중임을 나타냅니다.

쿼리는 백그라운드에서 실행될 수 있으므로 다른 쿼리 탭에서 계속 작업할 수 있습니다.

DAX 쿼리 저장

DAX 쿼리 뷰 쿼리 탭은 Power BI Desktop에서 저장할 때 파일에 저장되므로 파일을 다시 열 때 중단된 위치를 계속할 수 있습니다. 개발자 모드를 사용하여 Power BI 프로젝트를 저장하는 경우 각 쿼리 탭은 의미 체계 모델 폴더의 DAXQueries 폴더에 또는 라이브 연결 보고서에서 생성되었으면 보고서 폴더에 .dax 파일로 포함됩니다. Power BI 개발자 모드 설명서에서 자세히 알아보세요.

현재 Power BI 서비스의 Power BI Desktop에서 이전에 추가한 DAX 쿼리를 보거나 편집할 수 없습니다. 보고서 또는 의미 체계 모델의 뷰어에는 의미 체계 모델로 저장된 DAX 쿼리가 표시되지 않습니다.

Power BI 서비스 또는 Fabric 포털에서 DAX 쿼리를 작성하면 DAX 쿼리 뷰 탭은 닫을 때 삭제됩니다.

데이터 창

데이터 창에는 쿼리 작성에 도움이 되는 모델 항목이 표시됩니다. 이러한 항목 대부분의 편집 경로는 쿼리 보기에서 차단됩니다.

빠른 쿼리

데이터 창 바로 가기 메뉴에는 빠른 쿼리가 포함되어 있습니다. 빠른 쿼리를 사용하여 테이블, 열 및 측정값에 대한 새 쿼리 탭에서 쿼리를 만듭니다. 빠른 쿼리는 일반적인 작업의 생산성을 향상하도록 설계되었으며 추가로 쉽게 수정할 수 있도록 빌드되었습니다. 모든 빠른 쿼리는 새 쿼리 탭에서 만들어지고 자동으로 실행됩니다.

원하는 위치
  • 모델의 모든 측정값 정의는 쿼리에 표시된 모든 측정값 수식을 사용하여 쿼리를 만듭니다. 모든 측정값 수식을 쉽게 검색할 수 있습니다.

  • 새 측정값 정의는 측정값 블록을 정의하여 쿼리를 만듭니다. 이를 사용하여 DAX 쿼리 뷰에서 고유한 측정값을 만든 다음 준비가 되면 모델에 추가합니다.

테이블
  • 상위 100개 행 표시는 SELECTCOLUMNS()를 사용하여 테이블의 상위 100개 행을 표시하는 쿼리를 만듭니다. 행을 주석 처리하여 쉽게 수정할 수 있도록 각 행에 열이 나열됩니다. 정렬 순서를 지정하기 위해 ORDER BY도 포함되어 있습니다.

    상위 100개 행을 표시하는 스크린샷

  • 열 통계 표시는 표의 모든 열에 대한 통계 정보를 표시하는 쿼리를 만듭니다. 열을 MIN, MAX, AVERAGE, COUNT 등으로 집계하는 방법에 대한 많은 수식을 참조하세요.

  • 이 테이블의 모든 측정값 정의는 쿼리에 표시된 이 테이블의 측정값 수식을 사용하여 쿼리를 생성합니다.

  • 데이터 미리 보기 표시는 DISTINCT()를 사용하여 열 값을 확인하는 쿼리를 만듭니다.

    데이터 미리 보기를 표시하는 스크린샷

  • 항목 통계 표시는 특정 항목에 대한 통계 정보를 표시하는 쿼리를 만듭니다. 열을 MIN, MAX, AVERAGE, COUNT 등으로 집계하는 방법에 대한 여러 수식을 참조하세요. 반환되는 쿼리는 열의 데이터 형식에 따라 다르며 숫자, 텍스트 및 날짜 열에 대해 서로 다른 통계를 표시합니다.

    열 미리 보기를 표시하는 스크린샷

측정값 그룹
  • 평가는 측정 결과를 표시하는 쿼리를 만듭니다. SUMMARIZECOLUMNS()를 사용하면 열별로 그룹을 추가하여 국가, 제품 등과 같은 특정 그룹별로 측정값을 표시할 수 있습니다.

    평가 측정값의 스크린샷

  • 정의 및 평가는 측정값의 결과를 표시하고 나중에 수정할 수 있는 DEFINE 문에 측정값 수식을 표시하는 쿼리를 만듭니다.

    측정값을 정의하고 평가하는 스크린샷

  • 참조로 정의하고 평가는 측정값의 결과를 표시하고 수정 가능한 DEFINE 문에 측정값 수식뿐만 아니라 측정값 수식에서 참조되는 다른 측정값도 표시하는 쿼리를 생성합니다. 측정의 전체 컨텍스트에서 모든 부분을 편집합니다.

    참조를 사용하여 정의하고 평가하는 스크린샷

성능 분석기에서 시각적 DAX 쿼리 가져오기

보고서 뷰의 시각적 개체는 DAX 쿼리를 만들어 모델에서 데이터를 가져옵니다. 시각적 쿼리는 성능 분석기를 사용하여 DAX 쿼리 보기에서 볼 수 있습니다. 성능 분석기는 시각적 개체가 예기치 못한 값을 표시할 수 있는 이유에 대한 인사이트를 제공하거나 단순히 추가로 수정할 수 있는 쿼리를 빠르게 시작하는 방법으로 제공됩니다.

보고서 뷰에서 최적화 리본으로 이동한 다음, 성능 분석기를 선택합니다. 녹화 시작을 선택한 다음, 시각적 개체 새로 고침을 클릭합니다. 아래 표에서 시각적 개체를 확장하여 쿼리를 복사하거나 DAX 쿼리 보기에서 실행하는 옵션을 확인합니다. DAX 쿼리 보기에서 실행을 선택하면 시각적 쿼리가 가져와서 DAX 쿼리 보기에 새 쿼리 탭으로 추가된 후 실행됩니다.

성능 분석기 기능의 시각적 DAX 쿼리 스크린샷

Power BI Desktop의 DAX 쿼리 보기 및 실시간 연결

Power BI Desktop은 OneLake 데이터 허브에서 의미 체계 모델이 선택된 경우 연결을 클릭하여 게시된 Power BI 의미 체계 모델에 실시간 연결할 수 있습니다. 보고서 뷰의 오른쪽 하단에 Power BI 의미 체계 모델에 실시간으로 연결됨이 표시됩니다. DAX 쿼리 보기는 실시간 연결된 경우 DAX 쿼리를 작성하는 데 사용할 수 있습니다.

모델 측정

게시된 Power BI 의미 체계 모델에 실시간 연결된 경우 모델 측정값을 보거나 편집할 수 없습니다. 빠른 쿼리 옵션은 평가로만 제한됩니다.

보고서 측정값

게시된 Power BI 의미 체계 모델에 실시간으로 연결되면 보고서 측정값을 만들 수 있습니다. 보고서 측정값은 보고서모델 보기에서 새 측정값 작업을 사용하여 만들 수 있지만 이름에서 알 수 있듯이 현재 보고서에서만 사용할 수 있습니다. 일단 만들어지면 DAX 쿼리 보기의 빠른 쿼리참조로 정의 및 평가 옵션이 표시됩니다. DAX 쿼리는 의미 체계 모델에서 실행되므로 보고서 측정값은 모델 자체에 존재하지 않으므로 실행하려면 항상 DEFINE MEASURE 블록의 DAX 쿼리 범위 측정값으로 변환해야 합니다.

변경 내용으로 모델 업데이트 단추와 모델 업데이트에 대한 CodeLens 옵션은 보고서 측정에 사용할 수 없습니다.

웹의 DAX 쿼리 뷰

웹의 DAX 쿼리 뷰를 사용하려면 게시된 의미 체계 모델에서 DAX 쿼리를 작성합니다. 웹의 DAX 쿼리 뷰는 Power BI Desktop에서 동일한 환경이지만 몇 가지 예외가 있습니다.

  • 사용자가 Power BI 서비스(미리 보기)에서 데이터 모델 편집 가능 DAX 쿼리를 작성하려면 Power BI 작업 영역 설정을 사용하도록 설정해야 합니다. Power BI 서비스의 데이터 모델 편집에서 자세히 알아보세요.
  • DAX 쿼리는 닫을 때 삭제됩니다. Power BI Desktop의 DAX 쿼리는 모델에 저장되며 의미 체계 모델은 DAX 쿼리가 모델에 이미 저장되어 있을 수 있습니다. 현재 웹의 DAX 쿼리 뷰는 의미 체계 모델에 있을 수 있는 이전에 저장된 DAX 쿼리를 표시하지 않으며 브라우저를 닫은 후에는 웹에서 만든 쿼리가 유지되지 않습니다.
  • DAX 쿼리를 작성하려면 의미 체계 모델에 대한 쓰기 권한이 필요합니다. 작업 영역 뷰어는 의미 체계 모델에 대한 라이브 연결이 있는 Power BI Desktop을 사용하여 DAX 쿼리를 작성해야 합니다.

고려 사항 및 제한 사항

명심해야 할 고려 사항:

  • DAX 쿼리 편집기에서 500개 이상의 줄을 입력할 때 눈에 띄게 지연이 발생합니다.
  • 측정값에 대한 전구 바로 가기는 쿼리 탭에 DEFINE 문이 없는 경우에만 표시됩니다.
  • 명령 팔레트에는 아직 작동하지 않는 일부 명령이 표시됩니다.
  • 결과 표에는 아직 통화, 천 단위 정수 등 지정된 형식의 열과 측정값이 표시되지 않습니다.
  • Power BI 서비스에서 이 파일을 다운로드해도 게시된 의미 체계 모델에 저장된 DAX 쿼리는 포함되지 않습니다.
  • 작업 영역에서 초기 Git 통합을 설정해도 게시된 의미 체계 모델에 저장된 DAX 쿼리는 포함되지 않습니다. Fabric Git 통합에 대해 자세히 알아보세요.

그리고 명심해야 할 몇 가지 제한 사항이 있습니다.

  • 쿼리당 최대 15MB의 데이터입니다. 15MB를 초과하면 현재 행이 완료되지만 추가 행은 기록되지 않습니다.
  • 쿼리당 최대 값은 1,000,000개입니다. 20개의 열을 쿼리하는 경우 최대 50,000개의 행(100만 개를 20으로 나눈 값)을 가져올 수 있습니다.
  • 측정값이 500개를 초과하면 이 테이블 또는 모델의 모든 측정값을 정의할 수 없습니다.

웹에서 DAX 쿼리를 실행하면 다음과 같은 추가 제한 사항이 있습니다.

  • 쿼리당 최대 99,999개의 행이 반환됩니다.
  • 의미 체계 모델에 대한 쓰기 권한입니다. 빌드 권한이 있는 뷰어는 Power BI Desktop을 사용하여 라이브 연결을 사용하고 DAX 쿼리 뷰를 사용하여 DAX 쿼리를 실행할 수 있습니다.
  • 기본이 아닌 의미 체계 모델에만 사용할 수 있습니다. Power BI Desktop을 사용하여 기본 의미 체계 모델에 라이브 연결하고 DAX 쿼리 뷰를 사용하여 DAX 쿼리를 실행할 수 있습니다.
  • 사용자가 Power BI 서비스(미리 보기)에서 데이터 모델 편집 가능 DAX 쿼리를 작성하려면 Power BI 작업 영역 설정을 사용하도록 설정해야 합니다. Power BI 서비스 데이터 모델 편집에서 자세히 알아보기