Udostępnij za pośrednictwem


Datasets - Execute Queries

Wykonuje zapytania języka DAX (Data Analysis Expressions) względem podanego zestawu danych. Zestaw danych musi znajdować się w 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, które zostały zmienione lub utworzone w zapytaniu, zostaną zwrócone w nawiasie kwadratowym, na przykład [MyNewColumn].

Uprawnienia

Należy włączyć ustawienie dzierżawy Zestaw danych Wykonywanie zapytań interfejsu API RESTw obszarze ustawienia integracji.

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.

Wymagany zakres

Dataset.ReadWrite.All lub Dataset.Read.All

Ograniczenia

  • Zestawy danych, które są hostowane w usługach Azure Analysis Services lub które mają połączenie na żywo z lokalnym modelem usług 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, co zostanie trafione jako pierwsze). Jeśli na przykład wykonasz zapytanie dotyczące 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żyć 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 zabezpieczeniami na poziomie wiersza na ograniczenia zabezpieczeń na poziomie wiersza lub zestawów danych z włączonym logowaniem jednokrotnym.
  • Obecnie obsługiwane są tylko zapytania języka DAX. Funkcje MDX, funkcje INFO i zapytania 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

Przykładowe żądanie

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

Przykładowa odpowiedź

{
  "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 z pojedynczego zapytania zestawu danych

DatasetExecuteQueriesRequest

Żądanie wykonywania 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 pod obiektem 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 z pojedynczego zapytania zestawu danych

Nazwa Typ Opis
error

DatasetExecuteQueriesError

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

tables

DatasetExecuteQueriesTableResult[]

Lista danych tabel dla zapytania

DatasetExecuteQueriesRequest

Żądanie wykonywania 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, jedna 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 określono, wartość domyślna to false.

DatasetExecuteQueriesTableResult

Tabela danych

Nazwa Typ Opis
error

DatasetExecuteQueriesError

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

rows

object[]

Lista wierszy