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
lubMore 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 |
---|---|---|---|---|
dataset
|
path | True |
string |
Identyfikator zestawu danych |
Treść żądania
Nazwa | Wymagane | Typ | Opis |
---|---|---|---|
queries | True |
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 |
Ustawienia serializacji zestawu wyników |
Odpowiedzi
Nazwa | Typ | Opis |
---|---|---|
200 OK |
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 |
---|---|
Dataset |
Szczegóły błędu, jeśli istnieją. |
Dataset |
Szczegóły etykiety ochrony informacji, jeśli istnieją, skojarzone z zestawem danych. |
Dataset |
Zapytanie dotyczące zestawu danych |
Dataset |
Wyniki z pojedynczego zapytania zestawu danych |
Dataset |
Żądanie wykonywania zapytań względem zestawu danych |
Dataset |
Odpowiedź na zestaw danych wykonuje żądanie zapytań |
Dataset |
Ustawienia serializacji wyników zapytania zestawu danych |
Dataset |
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 |
Szczegóły błędu, jeśli istnieją. |
|
tables |
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 |
Lista zapytań dotyczących zestawu danych do wykonania |
|
serializerSettings |
Ustawienia serializacji zestawu wyników |
DatasetExecuteQueriesResponse
Odpowiedź na zestaw danych wykonuje żądanie zapytań
Nazwa | Typ | Opis |
---|---|---|
error |
Szczegóły błędu, jeśli istnieją. |
|
informationProtectionLabel |
Szczegóły etykiety ochrony informacji, jeśli istnieją, skojarzone z zestawem danych. |
|
results |
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 |
DatasetExecuteQueriesTableResult
Tabela danych
Nazwa | Typ | Opis |
---|---|---|
error |
Szczegóły błędu, jeśli istnieją. |
|
rows |
object[] |
Lista wierszy |