Datasets - Execute Queries

Wykonuje zapytania języka DAX (Data Analysis Expressions) względem podanego zestawu danych. Zestaw danych musi znajdować się w obszarze Mój obszar roboczy lub inny obszar roboczy.

Błędy zapytań języka DAX spowodują:

  • Błąd odpowiedzi, taki jak DAX query failure.
  • Kod stanu HTTP błędu (400).

Zapytanie, które żąda więcej niż jednej tabeli lub więcej niż dozwolona liczba wierszy tabeli, spowoduje:

  • Zwracane są ograniczone dane.
  • Błąd odpowiedzi, taki jak More than one result table in a query lub More than {allowed number} rows in a query result.
  • Pomyślny kod stanu HTTP (200).

Kolumny, które są w pełni kwalifikowane w zapytaniu, zostaną zwrócone z w pełni kwalifikowaną nazwą, na przykład MyTable[MyColumn]. Kolumny o zmienionej nazwie lub utworzone w zapytaniu zostaną zwrócone w nawiasie kwadratowym, na przykład [MyNewColumn].

Uprawnienia

Ustawienie dzierżawy Zestaw danych Wykonywanie zapytań interfejsu API REST, które można znaleźć w obszarze Ustawienia integracji, musi być włączone.

Użytkownik musi mieć uprawnienia do odczytu i kompilacji zestawu danych. Aby uzyskać więcej informacji, zobacz Zarządzanie uprawnieniami dostępu do zestawu danych.

Zakres wymagany

Dataset.ReadWrite.All lub Dataset.Read.All

Ograniczenia

  • Zestawy danych hostowane w Azure Analysis Services lub z połączeniem na żywo z lokalnym modelem Azure Analysis Services nie są obsługiwane.
  • Jedno zapytanie na wywołanie interfejsu API.
  • Jedno żądanie tabeli na zapytanie.
  • Maksymalnie 100 000 wierszy lub 1000 000 wartości na zapytanie (w zależności od tego, która wartość zostanie osiągnięna jako pierwsza). Jeśli na przykład wykonasz zapytanie o 5 kolumn, możesz wrócić do maksymalnie 100 000 wierszy. Jeśli wykonasz zapytanie dotyczące 20 kolumn, możesz wrócić do maksymalnie 50 000 wierszy (1 milion podzielonych przez 20).
  • Maksymalnie 15 MB danych na zapytanie. Po przekroczeniu 15 MB bieżący wiersz zostanie ukończony, ale nie zostaną zapisane żadne dodatkowe wiersze.
  • Istnieje limit 120 żądań zapytań na minutę na użytkownika, niezależnie od zestawu danych, którego dotyczy zapytanie.
  • Aby używać jednostek usługi, upewnij się, że ustawienie dzierżawy administratora Zezwalaj jednostkom usługi na używanie interfejsów API usługi Power BI w obszarze Ustawienia dewelopera jest włączone. Jednak niezależnie od ustawienia dzierżawy administratora jednostki usługi nie są obsługiwane w przypadku zestawów danych z ograniczeniami zabezpieczeń na poziomie wiersza lub zestawami danych z włączonym logowaniem jednokrotnym.
  • Obecnie obsługiwane są tylko zapytania języka DAX. Zapytania MDX i DMV nie są obsługiwane.

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

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
datasetId
path True

string

Identyfikator zestawu danych

Treść żądania

Nazwa Wymagane Typ Opis
queries True

DatasetExecuteQueriesQuery[]

Lista zapytań dotyczących zestawu danych do wykonania

impersonatedUserName

string

Nazwa UPN użytkownika do personifikacji. Jeśli model nie jest włączony zabezpieczeń na poziomie wiersza, zostanie on zignorowany.

serializerSettings

DatasetExecuteQueriesSerializationSettings

Ustawienia serializacji zestawu wyników

Odpowiedzi

Nazwa Typ Opis
200 OK

DatasetExecuteQueriesResponse

OK

Przykłady

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"
            }
          ]
        }
      ]
    }
  ]
}

Definicje

Nazwa Opis
DatasetExecuteQueriesError

Szczegóły błędu, jeśli istnieją.

DatasetExecuteQueriesInformationProtectionLabel

Szczegóły etykiety ochrony informacji, jeśli istnieją, skojarzone z zestawem danych.

DatasetExecuteQueriesQuery

Zapytanie dotyczące zestawu danych

DatasetExecuteQueriesQueryResult

Wyniki zapytania pojedynczego zestawu danych

DatasetExecuteQueriesRequest

Żądanie wykonania zapytań względem zestawu danych

DatasetExecuteQueriesResponse

Odpowiedź na zestaw danych wykonuje żądanie zapytań

DatasetExecuteQueriesSerializationSettings

Ustawienia serializacji wyników zapytania zestawu danych

DatasetExecuteQueriesTableResult

Tabela danych

DatasetExecuteQueriesError

Szczegóły błędu, jeśli istnieją.

Nazwa Typ Opis
code

string

Kod skojarzony z błędem

message

string

Komunikat o błędzie. Jeśli nie ma tutaj, te informacje można również znaleźć w obiekcie szczegółów zagnieżdżonym w obiekcie błędu.

DatasetExecuteQueriesInformationProtectionLabel

Szczegóły etykiety ochrony informacji, jeśli istnieją, skojarzone z zestawem danych.

Nazwa Typ Opis
id

string

Identyfikator (guid) etykiety ochrony informacji

name

string

Nazwa wyświetlana etykiety ochrony informacji

DatasetExecuteQueriesQuery

Zapytanie dotyczące zestawu danych

Nazwa Typ Opis
query

string

Zapytanie języka DAX do wykonania

DatasetExecuteQueriesQueryResult

Wyniki zapytania pojedynczego zestawu danych

Nazwa Typ Opis
error

DatasetExecuteQueriesError

Szczegóły błędu, jeśli istnieją.

tables

DatasetExecuteQueriesTableResult[]

Lista danych tabel dla zapytania

DatasetExecuteQueriesRequest

Żądanie wykonania zapytań względem zestawu danych

Nazwa Typ Opis
impersonatedUserName

string

Nazwa UPN użytkownika do personifikacji. Jeśli model nie jest włączony zabezpieczeń na poziomie wiersza, zostanie on zignorowany.

queries

DatasetExecuteQueriesQuery[]

Lista zapytań dotyczących zestawu danych do wykonania

serializerSettings

DatasetExecuteQueriesSerializationSettings

Ustawienia serializacji zestawu wyników

DatasetExecuteQueriesResponse

Odpowiedź na zestaw danych wykonuje żądanie zapytań

Nazwa Typ Opis
error

DatasetExecuteQueriesError

Szczegóły błędu, jeśli istnieją.

informationProtectionLabel

DatasetExecuteQueriesInformationProtectionLabel

Szczegóły etykiety ochrony informacji, jeśli istnieją, skojarzone z zestawem danych.

results

DatasetExecuteQueriesQueryResult[]

Lista wyników, po jednym na zapytanie wejściowe.

DatasetExecuteQueriesSerializationSettings

Ustawienia serializacji wyników zapytania zestawu danych

Nazwa Typ Opis
includeNulls

boolean

Określa, czy wartości null (puste) powinny być uwzględniane w zestawie wyników. Jeśli nie zostanie określona, wartość domyślna to false.

DatasetExecuteQueriesTableResult

Tabela danych

Nazwa Typ Opis
error

DatasetExecuteQueriesError

Szczegóły błędu, jeśli istnieją.

rows

object[]

Lista wierszy