Adattípusok a Power BI Desktopban

Ez a cikk a Power BI Desktop és a DAX által támogatott adattípusokat ismerteti.

Amikor a Power BI betölti az adatokat, a forrásoszlopok adattípusait olyan adattípusokká próbálja konvertálni, amelyek támogatják a hatékonyabb tárolást, számításokat és adatvizualizációkat. Ha például az Excelből importált értékek oszlopa nem tartalmaz törtértéket, a Power BI Desktop egész szám típusú adattípussá alakítja az adatoszlopot, amely az egész számok tárolására alkalmas.

Ez a fogalom azért fontos, mert egyes DAX-függvények speciális adattípus-követelményekkel rendelkeznek. A DAX sok esetben implicit módon konvertálja az adattípusokat, de bizonyos esetekben nem. Ha például egy DAX-függvény dátum típusú adattípust igényel, de az oszlop adattípusa Szöveg, a DAX-függvény nem fog megfelelően működni. Ezért fontos és hasznos a megfelelő adattípusok használata az oszlopokhoz.

Oszlop adattípusának meghatározása és megadása

A Power BI Desktopban meghatározhatja és megadhatja egy oszlop adattípusát a Power Query-szerkesztő, az Adatnézetben vagy a Jelentés nézetben:

  • A Power Query-szerkesztő válassza ki az oszlopot, majd válassza az Adattípus lehetőséget a menüszalag Átalakítás csoportjában.

    Screenshot of the Power Query Editor, showing the Data type dropdown selection.

  • Adatnézetben vagy jelentésnézetben jelölje ki az oszlopot, majd a menüszalag Oszlopeszközök lapján válassza az Adattípus melletti legördülő nyilat.

    Screenshot of Data View, showing the Data type dropdown selection.

A Power Query-szerkesztő Adattípus legördülő listájának két adattípusa nem található meg adatnézetben vagy jelentésnézetben: Dátum/idő/időzóna és Időtartam. Amikor ilyen típusú oszlopot tölt be a Power BI-modellbe, a Date/Time/Timezone oszlop dátum/idő típusúvá alakul, az Időtartam oszlop pedig decimális szám adattípussá alakul át.

A bináris adattípus nem támogatott a Power Query-szerkesztő kívül. A Power Query-szerkesztő bináris adattípust használhatja bináris fájlok betöltésekor, ha más adattípusokra konvertálja őket, mielőtt betöltené őket a Power BI-modellbe. A bináris kijelölés örökölt okokból létezik az Adatnézet és a Jelentésnézet menüben, de ha bináris oszlopokat próbál betölteni a Power BI-modellbe, hibákba ütközhet.

Számtípusok

A Power BI Desktop három számtípust támogat: Tizedes tört, Rögzített tizedesjegy és Egész szám.

A Táblázatos objektummodell (TOM) oszlop DataType tulajdonságával megadhatja a DataType számtípusok számainak számát. Az objektumok power BI-ban való programozott módosításáról további információt a Táblázatos objektummodellt tartalmazó Power BI szemantikai modellek programozásával foglalkozó cikkben talál.

Decimális szám

A tizedes tört a leggyakoribb számtípus, és képes kezelni a törtértékekkel és egész számokkal rendelkező számokat. A decimális szám 64 bites (nyolc bájtos) lebegőpontos számokat jelöl, amelyek negatív értékei -1,79E +308-2,23E -308, pozitív értékek 2,23E -308–1,79E +308 és 0 értékekkel. Az olyan számok, mint a 34, a 34.01 és a 34.000367063 érvényes tizedes törtek.

A decimális számtípus legnagyobb pontossága 15 számjegy. A decimális elválasztó a szám bármely pontján előfordulhat. Ez a típus megfelel az Excel számainak tárolásának, a TOM pedig enumként adja meg ezt a típust DataType.Double .

Fixpontos tizedes tört

A Rögzített tizedes tört adattípus rögzített helyet biztosít a tizedeselválasztóhoz. A tizedesjel mindig négy számjegyből áll jobbra, és 19 számjegynyi pontosságot tesz lehetővé. A rögzített tizedes tört legnagyobb értéke pozitív vagy negatív 922 337 203 685 477 5807.

A rögzített tizedes törttípus olyan esetekben hasznos, amikor a kerekítés hibákat eredményezhet. A kis törtértékekkel rendelkező számok néha halmozódnak fel, és egy számot kissé pontatlanságra kényszerítenek. A rögzített tizedesjegytípus segíthet elkerülni az ilyen típusú hibákat, ha a tizedesjel jobb oldalán lévő négy számjegyen túli értékeket csonkolja.

Ez az adattípus az SQL Server decimális (19,4) vagy a Pénznem adattípusnak felel meg az Analysis Servicesben és a Power Pivotban az Excelben. A TOM ezt a típust Enum értékként DataType.Decimal adja meg.

Egész szám

Az egész szám egy 64 bites (nyolc bájtos) egész számot jelöl. Mivel egész szám, az egész számnak nincsenek számjegyei a tizedesvessző jobb oldalán. Ez a típus -9 223 372 036 854 775 807 (-2^63+1) közötti pozitív vagy negatív egész számot tesz lehetővé 9 223 372 036 854 775 806 (2^63-2), így a numerikus adattípusok lehető legnagyobb számát jelölheti.

A Rögzített decimális típushoz hasonlóan a Teljes szám típus is hasznos lehet, ha a kerekítést kell szabályoznia. A TOM a Teljes szám adattípust Enum értékként DataType.Int64 jelöli.

Feljegyzés

A Power BI Desktop adatmodellje támogatja a 64 bites egész számértékeket, de a JavaScript korlátozásai miatt a power BI-vizualizációk legnagyobb száma biztonságosan kifejezhető : 9 007 199 254 740 991 (2^53-1). Ha az adatmodell nagyobb számokkal rendelkezik, számításokkal csökkentheti azok méretét, mielőtt hozzáadja őket a vizualizációkhoz.

A számtípus számításainak pontossága

A decimális szám adattípus oszlopértékei hozzávetőleges adattípusokként vannak tárolva a lebegőpontos számok I Enterprise kiadás E 754 Standard szabványa szerint. A közelítő adattípusok eleve pontossági korlátozásokkal rendelkeznek, mivel a pontos számértékek tárolása helyett rendkívül közelítő vagy kerekített közelítéseket tárolhatnak.

Pontosságvesztés vagy pontatlanság akkor fordulhat elő, ha a lebegőpontos érték nem képes megbízhatóan számszerűsíteni a lebegőpontos számjegyek számát. A pontatlanság egyes jelentési forgatókönyvekben váratlan vagy pontatlan számítási eredményként jelenhet meg.

A decimális szám adattípus értékei közötti egyenlőséghez kapcsolódó összehasonlító számítások váratlan eredményeket adhatnak vissza. Az egyenlőségi összehasonlítások közé tartoznak az egyenlők , nagyobbak =, kisebbek ><, mint , nagyobbak vagy egyenlők >=, és kisebbek vagy egyenlők <=.

Ez a probléma akkor a legszembetűnőbb, ha a RANKX függvényt egy DAX-kifejezésben használja, amely kétszer számítja ki az eredményt, ami kissé eltérő számokat eredményez. Előfordulhat, hogy a jelentés felhasználói nem veszik észre a két szám közötti különbséget, de a rangsor eredménye észrevehetően pontatlan lehet. A váratlan eredmények elkerülése érdekében az oszlop adattípusát decimális számrólRögzített tizedes vagy Egész szám értékre módosíthatja, vagy kényszerített kerekítést hajthat végre a KEREKÍTÉS használatával. A Rögzített tizedesjegy adattípus nagyobb pontosságú, mivel a tizedesjel mindig négy számjegyből áll a jobb oldalán.

Ritkán előfordulhat, hogy a decimális szám adattípusú oszlop értékeit összegző számítások váratlan eredményeket adnak vissza. Ez az eredmény valószínűleg olyan oszlopokkal jár, amelyek nagy mennyiségű pozitív és negatív számmal is rendelkeznek. Az összeg eredményére hatással van az értékek eloszlása az oszlop sorai között.

Ha egy szükséges számítás a legtöbb pozitív számot összegzi a negatív számok nagy részének összegzése előtt, akkor az elején lévő nagy pozitív részleges összeg esetleg eltúlozhatja az eredményeket. Ha a számítás kiegyensúlyozott pozitív és negatív számokat ad hozzá, a lekérdezés nagyobb pontosságot biztosít, ezért pontosabb eredményeket ad vissza. A váratlan eredmények elkerülése érdekében az oszlop adattípusát decimális számrólRögzített tizedes törtre vagy Egész számra módosíthatja.

Dátum-/időtípusok

A Power BI Desktop öt dátum/idő adattípust támogat a Power Query-szerkesztő. A betöltés során a dátum/idő/időzóna és az időtartam is átalakítható a Power BI Desktop adatmodellbe. A modell támogatja a Dátum/Idő értéket, de egymástól függetlenül is formázhatja az értékeket dátumként vagy időként.

  • A dátum/idő dátum és idő értéket is jelöl. A mögöttes dátum/idő érték decimális számtípusként van tárolva, így a két típus között konvertálható. Az időrész törtrészként tárolja az 1/300 másodperc (3,33 ms) egész többszöröseit. Az adattípus az 1900 és 9999 közötti dátumokat támogatja.

  • A dátum csak olyan dátumot jelöl, amelynek nincs idő része. A Dátum dátum/idő értékként lesz átalakítva a modellbe, a tört érték nulla értékével.

  • Az idő csak egy dátumrész nélküli időt jelöl. Az idő dátum/idő értékként konvertálja a modellt, számjegyek nélkül a tizedesvessző bal oldalán.

  • A dátum/idő/időzón egy UTC dátum/idő időzónát jelöl, és a modellbe való betöltéskor dátum/idő értékké alakul át. A Power BI-modell nem állítja be az időzónát a felhasználó tartózkodási helye vagy területi beállítása alapján. Az USA-ban a modellbe betöltött 09:00 érték 09:00-ként jelenik meg, ahol a jelentést megnyitják vagy megtekintik.

  • Az időtartam egy időtartamot jelöl, és decimális számtípussá alakul a modellbe való betöltésekor. Decimális számtípusként a dátum/idő értékekből helyes eredményekkel vehet fel vagy vonhat ki értékeket, és egyszerűen használhatja a nagyságrendet megjelenítő vizualizációk értékeit.

Szövegtípus

A Szöveges adattípus egy Unicode karakteres adatsztring, amely lehet betűk, számok vagy dátumok szöveges formátumban. A sztringhossz gyakorlati maximális korlátja körülbelül 32 000 Unicode karakter, a Power BI mögöttes Power Query-motorja és a szöveg adattípusának hosszára vonatkozó korlátai alapján. A gyakorlati maximális korláton túli szöveges adattípusok valószínűleg hibákat eredményeznek.

A Power BI a szöveges adatok tárolásának módja miatt az adatok bizonyos helyzetekben eltérően jelennek meg. A következő szakaszok olyan gyakori helyzeteket ismertetnek, amelyek miatt a szöveges adatok kissé megváltozhatnak a Power Query-szerkesztő adatainak lekérdezése és a Power BI-ba való betöltése között.

Kis- és nagybetűk érzékenysége

A Power BI-ban adatokat tároló és lekérdező motor érzéketlen, és a betűk különböző nagybetűit ugyanazzal az értékkel kezeli. Az "A" egyenlő az "a"-sel. A Power Query azonban megkülönbözteti a kis- és nagybetűkre vonatkozó adatokat, ahol az "A" nem ugyanaz, mint az "a". A kis- és nagybetűk megkülönböztetése olyan helyzetekhez vezethet, amikor a szöveges adatok a Power BI-ba való betöltés után megmagyarázhatatlanul megváltoznak.

Az alábbi példa a rendelési adatokat mutatja be: Az egyes rendelésekhez egyedi OrderNo oszlop és egy Címzett oszlop, amely a rendeléskor manuálisan megadott címzettnevet jeleníti meg. Power Query-szerkesztő több megrendelést jelenít meg ugyanazzal aA rendszerbe különböző nagybetűkkel beírt címzettek nevei.

Screenshot of textual data with various capitalizations in Power Query

Miután a Power BI betölti az adatokat, az Adatok lapon szereplő ismétlődő nevek nagybetűsítése az eredeti bejegyzésről az egyik nagybetűs változatra változik.

Screenshot that shows the textual data with changed capitalization after loading into Power BI.

Ez a változás azért fordul elő, mert Power Query-szerkesztő megkülönbözteti a kis- és nagybetűk adatait, ezért pontosan a forrásrendszerben tárolt adatokat jeleníti meg. A Power BI-ban adatokat tároló motor érzéketlen, ezért a karakter kis- és nagybetűs verzióit azonosként kezeli. A Power BI-motorba betöltött Power Query-adatok ennek megfelelően változhatnak.

A Power BI motor minden sort egyenként értékel ki, amikor betölti az adatokat, felülről kezdve. A motor minden egyes szöveges oszlopban, például a Címzőben tárol egy egyedi értékeket tároló szótárt, hogy az adattömörítés révén javuljon a teljesítmény. A motor az első három értéket egyediként látja a Címzett oszlopban, és tárolja őket a szótárban. Ezt követően, mivel a motor érzéketlen a kis- és nagybetűknél, a neveket azonosként értékeli ki.

A motor a "Taina Hasu" nevet a "TAINA HASU" és a "Taina HASU" névvel azonosnak látja, így nem tárolja ezeket a változatokat, hanem az első tárolt változatra hivatkozik. A "MURALI DAS" név nagybetűkben jelenik meg, mert a név így jelent meg, amikor a motor először kiértékelte az adatokat felülről lefelé.

Ez a kép a kiértékelési folyamatot mutatja be:

Diagram that shows the data load process and mapping text values to a dictionary of unique values.

Az előző példában a Power BI-motor betölti az első adatsort, létrehozza a címzett szótárát , és hozzáadja Taina Hasu-t . A motor a betöltendő tábla Címzett oszlopában is hivatkozik erre az értékre. A motor ugyanezt teszi a második és a harmadik sor esetében is, mivel ezek a nevek nem egyeznek meg a többivel az eset figyelmen kívül hagyásakor.

A negyedik sorban a motor összehasonlítja az értéket a szótárban szereplő névvel, és megkeresi a nevet. Mivel a motor érzéketlen, a "TAINA HASU" és a "Taina Hasu" ugyanaz. A motor nem ad hozzá új nevet a szótárhoz, hanem a meglévő névre hivatkozik. Ugyanez a folyamat történik a többi sor esetében is.

Feljegyzés

Mivel a Power BI-ban adatokat tároló és lekérdező motor nem érzékennyé teszi a kis- és nagybetűket, különösen ügyeljen arra, hogy DirectQuery módban dolgozik egy kis- és nagybetűkre érzékeny forrással. A Power BI feltételezi, hogy a forrás kiküszöbölte az ismétlődő sorokat. Mivel a Power BI nem érzékeny a kis- és nagybetűkre, két olyan értéket kezel, amelyek csak esetenként különböznek duplikáltként, míg előfordulhat, hogy a forrás nem így kezeli őket. Ilyen esetekben a végeredmény nem határozható meg.

A helyzet elkerülése érdekében, ha a DirectQuery módot kis- és nagybetűkre érzékeny adatforrással használja, normalizálja a burkolatok használatát a forrás lekérdezésben vagy a Power Query-szerkesztő.

Kezdő és záró szóközök

A Power BI motor automatikusan levágja a szöveges adatokat követő záró szóközöket, de nem távolítja el az adatokat megelőző szóközöket. A félreértések elkerülése érdekében a szöveg elején vagy végén lévő szóközök eltávolításához a Text.Trim függvényt kell használnia, ha kezdő vagy záró szóközöket tartalmazó adatokkal dolgozik. Ha nem távolítja el a kezdő szóközöket, előfordulhat, hogy egy kapcsolat nem hozható létre ismétlődő értékek miatt, vagy a vizualizációk váratlan eredményeket adhatnak vissza.

Az alábbi példa az ügyfelek adatait mutatja be: egy Név oszlop, amely az ügyfél nevét tartalmazza, és egy indexoszlop , amely minden bejegyzéshez egyedi. A nevek az idézőjelek között jelennek meg az egyértelműség kedvéért. Az ügyfélnév négyszer ismétlődik, de minden alkalommal a kezdő és záró szóközök különböző kombinációival. Ezek a változatok manuális adatbevitellel is előfordulhatnak az idő függvényében.

Sor Kezdő szóköz Záró szóköz Név Index Szöveg hossza
1 Nincs Nem "Dylan Williams" 1 14
2 Nem Igen "Dylan Williams" 10 15
3 Igen Nem " Dylan Williams" 20 15
4 Igen Igen "Dylan Williams" 40 16

A Power Query-szerkesztő az eredményként kapott adatok a következőképpen jelennek meg.

Screenshot of textual data with various leading and trailing spaces in Power Query Editor.

Amikor az adatok betöltése után az Adatok lapra lép a Power BI-ban, ugyanaz a táblázat a következő képhez hasonlóan néz ki, ugyanannyi sortal, mint korábban.

Screenshot of the same textual data after loading into Power BI returns the same number of rows as before.

Az adatokon alapuló vizualizáció azonban csak két sort ad vissza.

Screenshot of a table visual based on the same data returning just two lines of data.

Az előző képen az első sor értéke 60 az Index mezőhöz, így a vizualizáció első sora a betöltött adatok utolsó két sorát jelöli. A második, 11-es indexértékkel rendelkező sor az első két sort jelöli. A vizualizáció és az adattábla közötti sorok számának különbségét az okozza, hogy a motor automatikusan eltávolítja vagy levágja a záró szóközöket, a szóközöket azonban nem. A motor tehát az első és a második sort, a harmadik és a negyedik sort azonosként értékeli ki, és a vizualizáció ezeket az eredményeket adja vissza.

Ez a viselkedés a kapcsolatokhoz kapcsolódó hibaüzeneteket is okozhat, mivel a rendszer ismétlődő értékeket észlel. A kapcsolatok konfigurációjától függően például a következő képhez hasonló hibaüzenet jelenhet meg:

Screenshot of an error message about duplicate values.

Más helyzetekben előfordulhat, hogy nem tud több-az-egyhez vagy egy-az-egyhez kapcsolatot létrehozni, mert ismétlődő értékeket észlel.

Screenshot of the relationship dialog showing a 'the cardinality you selected isn't valid for this relationship' error, which is related to duplicate values being detected.

Ezeket a hibákat visszakövetheti a kezdő vagy záró szóközökre, és a Text.Trim vagy a Trim under Transform használatával oldhatja fel őket a Power Query-szerkesztő szóközeinek eltávolításához.

Igaz/hamis típus

Az Igaz/hamis adattípus egy Igaz vagy Hamis logikai érték. A legjobb és legkonzisztensebb eredmény érdekében, ha logikai igaz/hamis adatokat tartalmazó oszlopot tölt be a Power BI-ba, állítsa az oszloptípust Igaz/Hamis értékre.

A Power BI bizonyos helyzetekben eltérően konvertálja és jeleníti meg az adatokat. Ez a szakasz a logikai értékek konvertálásának gyakori eseteit ismerteti, valamint azt, hogy hogyan kezelhetők a power BI-ban váratlan eredményeket eredményező átalakítások.

Ebben a példában adatokat tölt be arról, hogy az ügyfelek feliratkoztak-e a hírlevélre. Az IGAZ érték azt jelzi, hogy az ügyfél feliratkozott a hírlevélre, és a FAL értéke Standard kiadás azt jelzi, hogy az ügyfél nem regisztrált.

Amikor azonban közzéteszi a jelentést a Power BI szolgáltatás, a hírlevélre való feliratkozás állapotoszlopa a TRUE vagy a FAL várt értékei helyett a 0 és a -1 értéket jeleníti meg Standard kiadás. Az alábbi lépések bemutatják, hogyan történik ez az átalakítás, és hogyan akadályozható meg.

A tábla egyszerűsített lekérdezése a következő képen jelenik meg:

Screenshot that shows columns set to Boolean.

A Feliratkozás hírlevélre oszlop adattípusa Bármely értékre van állítva, ezért a Power BI szövegként tölti be az adatokat a modellbe.

Screenshot showing the data loaded into Power BI.

Amikor egy egyszerű vizualizációt ad hozzá, amely az ügyfélenkénti részletes információkat jeleníti meg, az adatok a várt módon jelennek meg a vizualizációban mind a Power BI Desktopban, mind a Power BI szolgáltatás közzétéve.

Screenshot of a visual that shows the data appearing as expected.

Ha azonban frissíti a szemantikai modellt a Power BI szolgáltatás, a vizualizációk Feliratkozás hírlevélre oszlopa -1 és 0 értékeket jelenít meg ahelyett, hogy IGAZ vagy FAL értékként jeleníti meg őket Standard kiadás:

Screenshot of a visual that shows data appearing in an unexpected format after refresh.

Ha újból közzéteszi a jelentést a Power BI Desktopból, a Feliratkozás hírlevélre oszlop ismét igaz vagy FAL értéket jelenít meg Standard kiadás ahogy várta, de ha a Power BI szolgáltatás frissítés történik, az értékek ismét a -1 és a 0 értékre változnak.

Ennek a helyzetnek a megelőzésére az a megoldás, ha a logikai oszlopokat True/False típusra állítja be a Power BI Desktopban, és újból közzéteheti a jelentést.

Screenshot of changing the data type of the column to True/False.

A módosításkor a vizualizáció kissé eltérően jeleníti meg a Feliratkozás hírlevélre oszlop értékeit. Ahelyett, hogy a szöveg a táblázatban megadott összes nagybetű, csak az első betű lesz nagybetűs. Ez a változás az oszlop adattípusának módosításának egyik eredménye.

Screenshot of values appearing differently when you change the data type.

Miután módosította az adattípust, újra közzéteheti a Power BI szolgáltatás, és frissítés történik, a jelentés a várt módon True vagy False értékként jeleníti meg az értékeket.

Screenshot that shows true or false values that use the True/false data type appear as expected after refresh.

Összegzésképpen, ha logikai adatokat dolgozik a Power BI-ban, győződjön meg arról, hogy az oszlopok igaz/hamis adattípusra vannak állítva a Power BI Desktopban.

Üres típus

Az üres egy DAX-adattípus, amely az SQL nullértékeit jelöli és helyettesíti. Üreset a BLANK függvénnyel hozhat létre, és az ISBLANK logikai függvény használatával tesztelheti az üreseket.

Bináris típus

A bináris adattípussal bármilyen bináris formátumú adatot képviselhet. A Power Query-szerkesztő ezt az adattípust használhatja bináris fájlok betöltésekor, ha más adattípusokra konvertálja, mielőtt betöltené a Power BI-modellbe.

A Bináris oszlopok nem támogatottak a Power BI-adatmodellben. A bináris kijelölés örökölt okokból létezik az Adatnézet és jelentésnézet menüben, de ha bináris oszlopokat próbál betölteni a Power BI-modellbe, hibákba ütközhet.

Feljegyzés

Ha egy bináris oszlop egy lekérdezés lépéseinek kimenetében van, az adatok átjárón keresztüli frissítésének megkísérlése hibákat okozhat. Javasoljuk, hogy a lekérdezések utolsó lépéseként explicit módon távolítsa el a bináris oszlopokat.

Táblatípus

A DAX számos függvényben használ táblaadattípust, például aggregációkat és időintelligencia-számításokat. Egyes függvények egy táblára mutató hivatkozást igényelnek. Más függvények olyan táblát adnak vissza, amelyet aztán más függvények bemeneteként használhat.

Egyes függvényekben, amelyekhez tábla bemenetként szükséges, megadhat egy táblára kiértékelő kifejezést. Egyes függvények alaptáblára való hivatkozást igényelnek. Az egyes függvények követelményeiről a DAX-függvények referenciája nyújt tájékoztatást.

Implicit és explicit adattípus-átalakítás

Minden DAX-függvény speciális követelményekkel rendelkezik a bemenetként és kimenetként használandó adattípusokra vonatkozóan. Egyes függvények például egész számokat igényelnek egyes argumentumokhoz és dátumokhoz mások számára. Más függvényekhez szövegre vagy táblázatokra van szükség.

Ha az argumentumként megadott oszlop adatai nem kompatibilisek a függvény által igényelt adattípussal, a DAX hibát okozhat. A DAX azonban lehetőség szerint implicit módon megpróbálja átalakítani az adatokat a szükséges adattípusra.

Példa:

  • Ha egy dátumot sztringként ír be, a DAX elemzi a sztringet, és megpróbálja a Windows egyik dátum- és időformátumaként beállítani.
  • Hozzáadhat IGAZ + 1 értéket, és lekérheti az eredményt 2, mert a DAX implicit módon konvertálja a TRUE értéket az 1 számra, és elvégzi az 1+1 műveletet.
  • Ha két oszlopban ad hozzá értékeket, és az egyik érték szövegként ("12"), a másik pedig számként (12) jelenik meg, a DAX implicit módon számmá alakítja a sztringet, majd hozzáadja a numerikus eredményt. A = "22" + 22 kifejezés 44-et ad vissza.
  • Ha két számot próbál összefűzni, a DAX sztringként jeleníti meg őket, majd összefűzi őket. A = 12 &34 kifejezés az "1234" értéket adja vissza.

Implicit adatkonvertálási táblák

Az operátor úgy határozza meg a DAX-átalakítás típusát, hogy a kért művelet végrehajtása előtt a szükséges értékeket adja meg. Az alábbi táblázatok felsorolják az operátorokat, és a DAX konvertálása minden adattípuson megtörténik, amikor az adattípussal párosítja a metszetcellában lévő adattípust.

Feljegyzés

Ezek a táblák nem tartalmaznak szöveges adattípust. Ha egy szám szöveges formátumban jelenik meg, a Power BI bizonyos esetekben megpróbálja meghatározni a számtípust, és számként jeleníti meg az adatokat.

Hozzáadás (+)

EGÉSZ PÉNZNEM VALÓDI Dátum/idő
EGÉSZ EGÉSZ PÉNZNEM VALÓDI Dátum/idő
PÉNZNEM PÉNZNEM PÉNZNEM VALÓDI Dátum/idő
VALÓDI VALÓDI VALÓDI VALÓDI Dátum/idő
Dátum/idő Dátum/idő Dátum/idő Dátum/idő Dátum/idő

Ha például egy összeadási művelet valós számot használ a pénznemadatokkal kombinálva, a DAX mindkét értéket VALÓS értékké alakítja, és az eredményt VALÓS értékként adja vissza.

Kivonás (-)

A következő táblázatban a sorfejléc a minuend (bal oldali), az oszlopfejléc pedig a részösszeg (jobb oldalon).

EGÉSZ PÉNZNEM VALÓDI Dátum/idő
EGÉSZ EGÉSZ PÉNZNEM VALÓDI VALÓDI
PÉNZNEM PÉNZNEM PÉNZNEM VALÓDI VALÓDI
VALÓDI VALÓDI VALÓDI VALÓDI VALÓDI
Dátum/idő Dátum/idő Dátum/idő Dátum/idő Dátum/idő

Ha például egy kivonási művelet bármilyen más adattípusú dátumot használ, a DAX mindkét értéket dátummá alakítja, a visszatérési érték pedig szintén dátum.

Feljegyzés

Az adatmodellek támogatják a nem automatikus operátort ( negatív), de ez az operátor nem módosítja az operandus adattípusát.

Szorzás (*)

EGÉSZ PÉNZNEM VALÓDI Dátum/idő
EGÉSZ EGÉSZ PÉNZNEM VALÓDI EGÉSZ
PÉNZNEM PÉNZNEM VALÓDI PÉNZNEM PÉNZNEM
VALÓDI VALÓDI PÉNZNEM VALÓDI VALÓDI

Ha például egy szorzási művelet egy egész számot valós számmal egyesít, a DAX mindkét számot valós számmá alakítja, a visszatérési érték pedig szintén VALÓS.

Osztás (/)

A következő táblázatban a sorfejléc a számláló, az oszlopfejléc pedig a nevező.

EGÉSZ PÉNZNEM VALÓDI Dátum/idő
EGÉSZ VALÓDI PÉNZNEM VALÓDI VALÓDI
PÉNZNEM PÉNZNEM VALÓDI PÉNZNEM VALÓDI
VALÓDI VALÓDI VALÓDI VALÓDI VALÓDI
Dátum/idő VALÓDI VALÓDI VALÓDI VALÓDI

Ha például egy osztási művelet egy egész számot egy pénznemértékkel kombinál, a DAX mindkét értéket valós számokká alakítja, és az eredmény szintén valós szám.

Összehasonlító operátorok

Az összehasonlító kifejezésekben a DAX a sztringértékeknél nagyobb logikai értékeket, a sztringértékeket pedig a numerikus vagy dátum/idő értékeknél nagyobb értéknek tekinti. A számok és a dátum/idő értékek rangsora megegyezik.

A DAX nem végez implicit konverziót logikai vagy sztringértékekhez. A BLANK vagy az üres érték a másik összehasonlított érték adattípusától függően 0, "" vagy Hamis lesz.

A következő DAX-kifejezések szemléltetik ezt a viselkedést:

  • =IF(FALSE()>"true","Expression is true", "Expression is false") a "Kifejezés igaz" értéket adja vissza.

  • =IF("12">12,"Expression is true", "Expression is false") a "Kifejezés igaz" értéket adja vissza.

  • =IF("12"=12,"Expression is true", "Expression is false") "A kifejezés hamis".

A DAX implicit konverziókat végez numerikus vagy dátum/idő típusok esetében, ahogyan az alábbi táblázat ismerteti:

Összehasonlítás
Operátor
EGÉSZ PÉNZNEM VALÓDI Dátum/idő
EGÉSZ EGÉSZ PÉNZNEM VALÓDI VALÓDI
PÉNZNEM PÉNZNEM PÉNZNEM VALÓDI VALÓDI
VALÓDI VALÓDI VALÓDI VALÓDI VALÓDI
Dátum/idő VALÓDI VALÓDI VALÓDI Dátum/idő

Üres, üres sztringek és nulla értékek

A DAX null, üres értéket, üres cellát vagy hiányzó értéket jelöl ugyanazzal az új értéktípussal, a BLANK értékkel. Üreseket is létrehozhat a BLANK függvénnyel, vagy tesztelheti az üreseket az ISBLANK függvénnyel.

Az egyes függvénytől függ, hogy az olyan műveletek, mint az összefűzés vagy az összefűzés hogyan kezelik az üres elemeket. Az alábbi táblázat összefoglalja a DAX és a Microsoft Excel-képletek üresek kezelése közötti különbségeket.

Kifejezés DAX Excel
BLANK + BLANK BLANK 0 (nulla)
BLANK + 5 5 5
ÜRES * 5 BLANK 0 (nulla)
5/BLANK Infinity Hiba
0/BLANK NaN Hiba
ÜRES/ÜRES BLANK Hiba
FAL STANDARD KIADÁS VAGY BLANK HAMIS HAMIS
FAL STANDARD KIADÁS ÉS BLANK HAMIS HAMIS
IGAZ VAGY ÜRES IGAZ IGAZ
IGAZ ÉS ÜRES HAMIS IGAZ
ÜRES VAGY ÜRES BLANK Hiba
ÜRES ÉS ÜRES BLANK Hiba

A Power BI Desktoppal és az adatokkal sokféle dolgot elvégezhet. A Power BI képességeivel kapcsolatos további információkért tekintse meg a következő erőforrásokat: