Share via


Datasets - Execute Queries

제공된 데이터 세트에 대해 DAX(데이터 분석 식) 쿼리를 실행합니다. 데이터 세트는 내 작업 영역 또는 다른 작업 영역에 있어야 합니다.

DAX 쿼리 오류로 인해 다음이 발생합니다.

  • 와 같은 DAX query failure응답 오류입니다.
  • 오류 HTTP 상태 코드(400).

둘 이상의 테이블을 요청하거나 허용된 테이블 행 수보다 많은 쿼리를 수행하면 다음이 발생합니다.

  • 반환되는 제한된 데이터입니다.
  • 또는 와 같은 More than one result table in a queryMore than {allowed number} rows in a query result응답 오류입니다.
  • 성공적인 HTTP 상태 코드(200).

쿼리에서 정규화된 열은 정규화된 이름으로 반환됩니다(예 MyTable[MyColumn]: ). 쿼리에서 이름이 바뀌거나 생성된 열은 대괄호 안에 반환됩니다(예: [MyNewColumn]).

사용 권한

통합 설정 아래에 있는 테넌트 설정 데이터 세트 쿼리 실행 REST API를 사용하도록 설정해야 합니다.

사용자에게 데이터 세트 읽기 및 빌드 권한이 있어야 합니다. 자세한 내용은 데이터 세트 액세스 권한 관리를 참조하세요.

필수 범위

Dataset.ReadWrite.All 또는 Dataset.Read.All

제한 사항

  • Azure Analysis Services 호스트되거나 온-프레미스 Azure Analysis Services 모델에 대한 라이브 연결이 있는 데이터 세트는 지원되지 않습니다.
  • API 호출당 하나의 쿼리입니다.
  • 쿼리당 하나의 테이블 요청입니다.
  • 쿼리당 최대 100,000개 행 또는 1,000,000개 값(먼저 적중됨)입니다. 예를 들어 5개의 열을 쿼리하는 경우 최대 100,000개의 행을 다시 가져올 수 있습니다. 20개의 열을 쿼리하는 경우 최대 50,000개의 행(1백만을 20개로 나눈 값)을 다시 가져올 수 있습니다.
  • 쿼리당 최대 15MB의 데이터입니다. 15MB를 초과하면 현재 행이 완료되지만 추가 행은 기록되지 않습니다.
  • 쿼리되는 데이터 세트에 관계없이 사용자당 분당 쿼리 요청은 120개로 제한됩니다.
  • 서비스 주체를 사용하려면 관리자 테넌트 설정 개발자 설정에서 서비스 주체가 Power BI API를 사용하도록 허용을 사용하도록 설정했는지 확인합니다. 그러나 관리 테넌트 설정에 관계없이 서비스 주체는 RLS 제한에 따라 RLS 가 있는 데이터 세트 또는 SSO를 사용하도록 설정된 데이터 세트에 대해 지원되지 않습니다.
  • 현재 DAX 쿼리만 지원됩니다. MDX 및 DMV 쿼리는 지원되지 않습니다.

POST https://api.powerbi.com/v1.0/myorg/datasets/{datasetId}/executeQueries

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
datasetId
path True

string

데이터 세트 ID

요청 본문

Name 필수 형식 Description
queries True

DatasetExecuteQueriesQuery[]

실행할 데이터 세트 쿼리 목록

impersonatedUserName

string

가장할 사용자의 UPN입니다. 모델이 RLS를 사용하도록 설정되지 않은 경우 무시됩니다.

serializerSettings

DatasetExecuteQueriesSerializationSettings

결과 집합에 대한 serialization 설정

응답

Name 형식 Description
200 OK

DatasetExecuteQueriesResponse

정상

예제

Execute queries example

Sample Request

POST https://api.powerbi.com/v1.0/myorg/datasets/cfafbeb1-8037-4d0c-896e-a46fb27ff229/executeQueries
{
  "queries": [
    {
      "query": "EVALUATE VALUES(MyTable)"
    }
  ],
  "serializerSettings": {
    "includeNulls": true
  },
  "impersonatedUserName": "someuser@mycompany.com"
}

Sample Response

{
  "results": [
    {
      "tables": [
        {
          "rows": [
            {
              "MyTable[Year]": 2010,
              "MyTable[Quarter]": "Q1"
            },
            {
              "MyTable[Year]": 2010,
              "MyTable[Quarter]": "Q2"
            },
            {
              "MyTable[Year]": 2011,
              "MyTable[Quarter]": "Q1"
            }
          ]
        }
      ]
    }
  ]
}

정의

Name Description
DatasetExecuteQueriesError

오류의 세부 정보(있는 경우)입니다.

DatasetExecuteQueriesInformationProtectionLabel

데이터 세트와 연결된 정보 보호 레이블(있는 경우)의 세부 정보입니다.

DatasetExecuteQueriesQuery

데이터 세트 쿼리

DatasetExecuteQueriesQueryResult

단일 데이터 세트 쿼리의 결과

DatasetExecuteQueriesRequest

데이터 세트에 대한 쿼리 실행 요청

DatasetExecuteQueriesResponse

데이터 세트에 대한 응답 쿼리 실행 요청

DatasetExecuteQueriesSerializationSettings

데이터 세트 쿼리 결과에 대한 serialization 설정

DatasetExecuteQueriesTableResult

데이터 테이블

DatasetExecuteQueriesError

오류의 세부 정보(있는 경우)입니다.

Name 형식 Description
code

string

오류와 관련된 코드

message

string

오류의 메시지입니다. 여기에 없는 경우 이 정보는 오류 개체 아래에 중첩된 세부 정보 개체에서도 찾을 수 있습니다.

DatasetExecuteQueriesInformationProtectionLabel

데이터 세트와 연결된 정보 보호 레이블(있는 경우)의 세부 정보입니다.

Name 형식 Description
id

string

정보 보호 레이블의 식별자(guid)

name

string

정보 보호 레이블의 표시 이름

DatasetExecuteQueriesQuery

데이터 세트 쿼리

Name 형식 Description
query

string

실행할 DAX 쿼리

DatasetExecuteQueriesQueryResult

단일 데이터 세트 쿼리의 결과

Name 형식 Description
error

DatasetExecuteQueriesError

오류의 세부 정보(있는 경우)입니다.

tables

DatasetExecuteQueriesTableResult[]

쿼리에 대한 테이블 데이터 목록

DatasetExecuteQueriesRequest

데이터 세트에 대한 쿼리 실행 요청

Name 형식 Description
impersonatedUserName

string

가장할 사용자의 UPN입니다. 모델이 RLS를 사용하도록 설정되지 않은 경우 무시됩니다.

queries

DatasetExecuteQueriesQuery[]

실행할 데이터 세트 쿼리 목록

serializerSettings

DatasetExecuteQueriesSerializationSettings

결과 집합에 대한 serialization 설정

DatasetExecuteQueriesResponse

데이터 세트에 대한 응답 쿼리 실행 요청

Name 형식 Description
error

DatasetExecuteQueriesError

오류의 세부 정보(있는 경우)입니다.

informationProtectionLabel

DatasetExecuteQueriesInformationProtectionLabel

데이터 세트와 연결된 정보 보호 레이블(있는 경우)의 세부 정보입니다.

results

DatasetExecuteQueriesQueryResult[]

입력 쿼리당 하나씩 결과 목록입니다.

DatasetExecuteQueriesSerializationSettings

데이터 세트 쿼리 결과에 대한 serialization 설정

Name 형식 Description
includeNulls

boolean

null(빈) 값을 결과 집합에 포함할지 여부입니다. 지정하지 않으면 기본값 false가 사용됩니다.

DatasetExecuteQueriesTableResult

데이터 테이블

Name 형식 Description
error

DatasetExecuteQueriesError

오류의 세부 정보(있는 경우)입니다.

rows

object[]

행 목록