Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Lekérdezésdiagnosztika használatának egyik leggyakoribb oka, hogy jobban megértsük, mely műveleteket leküld a Power Query a háttérbeli adatforrásnak végrehajtásra. Ezt a folyamatot hajtogatásnak is nevezik. Annak megtekintéséhez, hogy milyen műveletek hajthatók végre, tekintse meg a legspecifikusabb lekérdezéseket vagy lekérdezéseket, amelyeket Power Query küld a háttéradatforrásnak. Ezt a folyamatot az ODATA és az SQL esetében is megvizsgálhatja.
A lekérdezésdiagnosztikák rögzítése Power BI című szakaszban leírt művelet négy lépést hajt végre:
- Csatlakozik az adatforráshoz
- Lekéri az ügyféltáblát
- Az Ügyfélazonosító szerepkört erre szűri:
Sales Representative - Csoportok szerint
Country
Mivel az ODATA-összekötő jelenleg nem támogatja a COUNT() végponthoz való összecsukását, és mivel ez a végpont a működésében is korlátozott, nem számítunk arra, hogy ez az utolsó lépés lehajtható. Másrészt a szűrés viszonylag triviális. Pontosan ezt látjuk, ha megnézzük a legspecifikusabb lekérdezést:
Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry HTTP/1.1
Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK
Látható, hogy a táblát azokra a ContactTitle értékekre szűrjük, amelyek megegyeznek a Sales Representative értékkel, és csak két oszlopot ad vissza: Customer ID és Country.
Country a csoportosítási művelethez van szükség, amelyet helyileg kell végrehajtani, mert az ODATA-végpont nem végzi el. Meg tudjuk állapítani, hogy mi hajlik, és mi nem hajlik.
Hasonlóképpen, ha megnézzük az SQL-diagnosztikában kibocsátott konkrét és végleges lekérdezést, valami kissé eltérőt látunk:
count(1) as [Count]
from
(
select [_].[Country]
from [dbo].[Customers] as [_]
where [_].[ContactTitle] = 'Sales Representative' and [_].[ContactTitle] is not null
) as [rows]
group by [Country]
Láthatja, hogy a Power Query létrehoz egy részhalmazt, amelyben a(z) ContactTitle értékét a(z) Sales Representative értékre szűri, majd ebben a részhalmazban a(z) Country szerint csoportosít. Minden műveletünk megszűnt.
A Lekérdezésdiagnosztika segítségével megvizsgálhatjuk, hogy milyen típusú műveletek képeződtek le. A jövőben reméljük, hogy ez a képesség könnyebben használható lesz.