Zdieľať cez


Typy údajov v aplikácii Power BI Desktop

Tento článok popisuje typy údajov, ktoré Power BI Desktop a DAX (Data Analysis Expressions) podporujú.

Keď Power BI načíta údaje, pokúsi sa konvertovať typy údajov zdrojových stĺpcov na typy údajov, ktoré podporujú efektívnejšie ukladanie, výpočty a vizualizáciu údajov. Ak napríklad stĺpec hodnôt importovaných z Excelu neobsahuje žiadne desatinné hodnoty, Power BI Desktop skonvertuje stĺpec údajov na Celé číslo typ údajov, ktorý je vhodnejší na ukladanie celých čísel.

Tento koncept je dôležitý, pretože niektoré funkcie DAX majú špeciálne požiadavky na typy údajov. V mnohých prípadoch DAX implicitne konvertuje typy údajov, ale v niektorých prípadoch nie. Ak napríklad funkcia DAX vyžaduje typ údajov Date, ale typ údajov stĺpca je Text, funkcia DAX nebude fungovať správne. Preto je dôležité a užitočné používať pre stĺpce správne typy údajov.

Určenie a zadanie typu údajov stĺpca

V aplikácii Power BI Desktop môžete určiť a zadať typ údajov stĺpca v editore Power Query, v zobrazení tabuľky alebo v zobrazení zostavy:

  • V Editore Power Query vyberte stĺpec a potom v skupine Transformovať na páse s nástrojmi vyberte položky Typ údajov.

    Snímka obrazovky Editora Power Query zobrazujúca výber rozbaľovacieho zoznamu Typ údajov.

  • V zobrazení Tabuľka alebo Zostava vyberte stĺpec a potom vyberte šípku rozbaľovacieho zoznamu vedľa položky Typ údajov na karte Nástroje Stĺpec, na páse s nástrojmi.

    Snímka obrazovky zobrazenia tabuľky zobrazujúca výber rozbaľovacieho zoznamu Typ údajov.

Výber rozbaľovacieho zoznamu Typ údajov v Editore Power Query má dva typy údajov, ktoré sa nenachádzali v zobrazení tabuľky alebo v zobrazení zostavy: dátum/čas/časové pásmo a trvania. Keď načítate stĺpec s týmito typmi údajov do modelu služby Power BI, stĺpec Dátum/Čas/Časové pásmo sa skonvertuje na typ údajov Dátum a čas a trvanie sa prevedie na desatinné číslo typu údajov.

Typ údajov Binary nie je podporovaný mimo editora Power Query. V Editore Power Query môžete pri načítaní binárnych súborov použiť typ údajov Binary, ak ho pred načítaním do modelu Power BI skonvertujete na iné typy údajov. Výber binárneho existuje v ponukách Zobrazenia tabuľky a Zobrazenia zostavy z starších dôvodov, ale ak sa pokúsite načítať stĺpce binárneho do modelu Power BI, môžu sa vyskytnúť chyby.

Typy čísel

Power BI Desktop podporuje tri typy čísel: desatinné číslo, Pevné desatinné čísloa Celé číslo.

Vlastnosť DataType stĺpca tabuľkového objektového modelu (TOM) môžete použiť na určenie DataType Enums pre typy čísel. Ďalšie informácie o programovej úprave objektov v službe Power BI nájdete v téme Program pre sémantické modely služby Power BI s tabuľkovým objektovým modelom.

Desatinné číslo

desatinné číslo je najčastejším typom čísla a dokáže pracovať s číslami s desatinnými hodnotami a celými číslami. Desatinné číslo predstavuje 64-bitové (8-bajtové) čísla s pohyblivou desatinnou čiarkou -1,79E +308 až po -2,23E –308308kladné hodnoty od 2,23E -308 do 1,79E +308a 0. Čísla ako 34, 34,01a 34,000367063 sú platné desatinné čísla.

Najvyššia presnosť, ktorú môže Typ Desatinné číslo predstavovať, je 15 číslic. Oddeľovač desatinných miest sa môže nachádzať kdekoľvek v čísle. Tento typ zodpovedá tomu, ako program Excel ukladá svoje čísla, a tom určuje tento typ ako DataType.Double Enum.

Pevné desatinné číslo

Typ údajov Pevné desatinné číslo má pevné umiestnenie oddeľovača desatinných miest. Oddeľovač desatinných miest má vždy štyri číslice vpravo a umožňuje 19 číslic. Najväčšia hodnota, Môže predstavovať pevné desatinné číslo, je kladná alebo záporná 922 337 203 685 477,5807.

Typ Pevné desatinné číslo je užitočný v prípadoch, keď zaokrúhlenie môže spôsobovať chyby. Čísla, ktoré majú malé desatinné hodnoty, sa niekedy môžu nahromadiť a môžu vynútiť, aby bolo číslo trochu nepresné. Typ Pevné desatinné číslo vám môže pomôcť vyhnúť sa týmto typom chýb skrátením hodnôt za štyri číslice napravo od oddeľovača desatinných miest.

Tento typ údajov zodpovedá Desatinné číslo (19,4)SQL Server alebo Mena typu údajov v službách Analysis Services a Power Pivot v Exceli. Tom určuje tento typ ako DataType.Decimal Enum.

Celé číslo

Celé číslo predstavuje 64-bitovú (8-bajtovú) celočíselnú hodnotu. Keďže ide o celé číslo, Celé číslo nemá žiadne číslice napravo od desatinnej čiarky. Tento typ umožňuje 19 číslic kladných alebo záporných celých čísel od –9 223 372 036 854 775 807 (-2^63 + 1) a 9 223 372 036 854 775 806 (2 ^ 63– 2), môže tak predstavovať najväčší možný počet číselných typov údajov.

Podobne ako pri type Pevné desatinné číslo môže byť typ Celé číslo užitočný pri ovládaní zaokrúhlenia. TOM predstavuje Celé číslo typ údajov ako DataType.Int64 Enum.

Nota

Dátový model aplikácie Power BI Desktop podporuje 64-bitové celočíselné hodnoty, ale z dôvodu obmedzení JavaScriptu je najväčšie číslo, ktoré vizuály Power BI dokážu bezpečne vyjadriť, 9 007 199 254 740 991 (2^53-1). Ak má váš dátový model väčšie čísla, môžete ich zmenšiť pomocou výpočtov ešte predtým, ako ich pridáte do vizuálov.

Presnosť výpočtov číselného typu

Hodnoty stĺpcov Desatinné číslo údajov sú uložené ako približné typom údajov podľa štandardu IEEE 754 pre čísla s pohyblivou desatinnou čiarkou. Približné typy údajov majú vlastné obmedzenia presnosti, pretože namiesto ukladania presných číselných hodnôt môžu ukladať veľmi blízko alebo zaokrúhlené približné hodnoty.

Presnosť straty alebo nepristúpenia, môže nastať, ak hodnota s pohyblivou desatinnou čiarkou nemôže spoľahlivo vyčísľovať počet číslic s pohyblivou desatinnou čiarkou. Imprecision sa môže v niektorých scenároch vytvárania zostáv zobraziť ako neočakávané alebo nepresné výsledky výpočtu.

Výpočty porovnania súvisiace s rovnosťou medzi hodnotami Desatinné číslo typom údajov môžu potenciálne vrátiť neočakávané výsledky. Porovnania rovnosti zahŕňajú rovné =, väčšie ako >, menšie ako <, väčšie ako alebo rovné >=, a menšie ako alebo rovné <=.

Tento problém je najviditeľnejší, ak použijete funkciu RANKX vo výraze DAX, ktorý vypočíta výsledok dvakrát, čo má za následok mierne odlišné čísla. Používatelia zostáv si možno všimnú rozdiel medzi týmito dvomi číslami, ale výsledok poradia môže byť výrazne nepresný. Ak sa chcete vyhnúť neočakávaným výsledkom, môžete zmeniť typ údajov stĺpca zo Desatinné číslo na Pevné desatinné číslo alebo Celé číslo, alebo vykonať nútené zaokrúhlenie pomocou funkcie ROUND. Typ údajov Pevné desatinné číslo má väčšiu presnosť, pretože oddeľovač desatinných miest má vždy štyri číslice vpravo.

Výpočty, ktoré sčíta hodnoty stĺpca desatinného čísla typom údajov, môžu zriedkavo vrátiť neočakávané výsledky. Tento výsledok je najpravdepodobnejší pre stĺpce, ktoré majú veľké množstvo kladných aj záporných čísel. Výsledok súčtu je ovplyvnený distribúciou hodnôt v riadkoch v stĺpci.

Ak požadovaný výpočet sčíta väčšinu kladných čísel pred sčítaním väčšiny záporných čísel, veľká kladná čiastočná súčet na začiatku môže potenciálne skresliť výsledky. Ak sa pri výpočte pridá vyvážené kladné a záporné čísla, dotaz si zachová väčšiu presnosť, a preto vráti presnejšie výsledky. Ak sa chcete vyhnúť neočakávaným výsledkom, môžete zmeniť typ údajov stĺpca zo Desatinné číslo na Pevné desatinné číslo alebo Celé číslo.

Typy dátumu a času

Power BI Desktop podporuje päť typov údajov dátumu a času v editore Power Query. dátumu a času a časového pásma a trvania skonvertovať počas načítania do dátového modelu aplikácie Power BI Desktop. Model podporuje dátumu a času alebo môžete hodnoty formátovať ako dátumu alebo času nezávisle od seba.

  • dátumu a času predstavuje hodnotu dátumu aj času. Základná hodnota Dátum a čas je uložená ako typ Desatinné číslo, takže ich môžete konvertovať medzi týmito dvomi typmi. Časová časť ukladá ako zlomok s celými násobkami 1/300 sekúnd (3,33 ms). Typ údajov podporuje dátumy v rozmedzí od rokov 1900 až 9999.

  • Dátum predstavuje len dátum bez časovej časti. dátum skonvertuje na model ako hodnotu dátumu a času s nulou pre zlomkovú hodnotu.

  • Čas predstavuje len čas bez dátumovej časti. čas sa skonvertuje na model ako hodnota dátumu a času bez číslic naľavo od desatinnej čiarky.

  • Dátum/Čas/Časové pásmo predstavuje dátum a čas v UTC s posunom časového pásma a pri načítaní do modelu sa konvertuje na dátumu a času. Model Power BI neupravuje časové pásmo na základe polohy používateľa alebo miestneho nastavenia používateľa. Hodnota 09:00 načítaná do modelu v USA sa zobrazí ako 09:00 všade, kde je zostava otvorená alebo zobrazená.

  • Trvanie predstavuje časový čas a pri načítaní do modelu konvertuje typ Desatinné číslo. Ako typ Desatinné číslo môžete pridať alebo odčítať hodnoty z hodnoty dátumu a času so správnymi výsledkami a jednoducho použiť hodnoty vo vizualizáciách, ktoré zobrazujú rozsah.

Typ textu

Typ údajov Text je údajový reťazec znakov Unicode, ktorý môže byť písmenami, číslami alebo dátumami zastúpenými v textovom formáte. Praktický maximálny limit dĺžky reťazca je na základe základného nástroja Power Query služby Power Query približne 32 000 znakov Unicode a jeho limity pre text dĺžky typu údajov. Textové typy údajov, ktoré prekročia maximálny limit praktických údajov, pravdepodobne spôsobia chyby.

To, že Power BI ukladá textové údaje, môže v istých situáciách spôsobiť, že sa údaje zobrazia inak. Nasledujúce časti popisujú bežné situácie, ktoré môžu spôsobiť, že Text údajov sa mierne zmení medzi dotazovaním údajov v Editore Power Query a ich načítaním do služby Power BI.

Citlivosť prípadu

Nástroj, ktorý ukladá a dotazuje údaje v službe Power BI, nerozlišuje malé a veľké písmenáa zaobchádza s rôznymi veľkými písmenami ako s rovnakou hodnotou. "A" sa rovná "a". Doplnok Power Query však rozlišuje veľké a malé písmená, kde "A" nie je rovnaké ako "a". Rozdiel v citlivosti prípadov môže viesť k situáciám, v ktorých sa textové údaje po načítaní do služby Power BI zdanlivo nevysvetliteľne zmenia na veľké písmená.

Nasledujúci príklad znázorňuje údaje o objednávke: stĺpec OrderNo ktorý je jedinečný pre každú objednávku, a stĺpec Addressee, v ktorý zobrazuje názov adresy zadaný manuálne v čase objednávky. Editor Power Query zobrazuje niekoľko objednávok s rovnakými názvami adresy zadanými do systému s rôznymi veľkými písmenami.

Snímka obrazovky s textovými údajmi s rôznymi veľkými písmenami v aplikácii Power Query

Po načítaní údajov sa v službe Power BI zmení veľké písmeno duplicitných názvov na karte údajov z pôvodnej položky na jednu z variantov veľkých a veľkých písmen.

Snímka obrazovky zobrazujúca textové údaje so zmeneným veľkým písmenom po načítaní do služby Power BI.

Táto zmena sa stáva, pretože editor Power Query rozlišuje malé a veľké písmená, takže zobrazuje údaje presne tak, ako sú uložené v zdrojovom systéme. Nástroj, ktorý ukladá údaje v službe Power BI, nerozlišuje malé a veľké písmená, takže spracúva verzie znaku s malými písmenami a veľkými písmenami ako identické. Údaje Power Query načítané do nástroja Power BI sa môžu podľa toho meniť.

Nástroj Power BI vyhodnotí každý riadok samostatne, keď načíta údaje, počnúc zhora. Pre každý textový stĺpec, napríklad Adresy, nástroj ukladá slovník jedinečných hodnôt na zlepšenie výkonu prostredníctvom kompresie údajov. Nástroj vidí prvé tri hodnoty v stĺpci Addressee ako jedinečné a uloží ich v slovníku. Potom, keďže v nástroji sa nerozlišujú malé a veľké písmená, vyhodnotí názvy ako identické.

Nástroj vidí názov Taina Hasu ako rovnaký ako "TAINA HASU" a "Taina HASU", takže tieto variácie neukladá, ale odkazuje na prvú uloženú variáciu. Názov MURALI DAS sa zobrazuje veľkými písmenami, pretože takto sa názov zobrazil pri prvom vyhodnotení názvom nástroja pri načítavaní údajov zhora nadol.

Tento obrázok znázorňuje proces hodnotenia:

diagram, ktorý zobrazuje proces načítania údajov a mapuje textové hodnoty do slovníka jedinečných hodnôt.

V predchádzajúcom príklade nástroj Power BI načíta prvý riadok údajov, vytvorí slovník Addressee a pridá doň Taina Has u. Nástroj tiež pridáva odkaz na túto hodnotu do stĺpca Addressee pri načítanej tabuľke. Nástroj robí to isté pre druhý a tretí riadok, pretože tieto názvy nie sú ekvivalentné s ostatnými pri ignorovaní malých a malých písmen.

Vo štvrtom riadku nástroj porovná hodnotu s názvami v slovníku a vyhľadá názov. Keďže v nástroji sa nerozlišujú malé a veľké písmená, "TAINA HASU" a "Taina Hasu" sú rovnaké. Nástroj nepridá nový názov do slovníka, ale odkazuje na existujúci názov. Rovnaký proces sa vyskytne aj v zostávajúcich riadkoch.

Nota

Keďže nástroj, ktorý ukladá a dotazuje údaje v službe Power BI, nerozlišuje malé a veľké písmená, pri práci v režime DirectQuery so zdrojom rozlišujúceho malé a veľké písmená buďte opatrní. Power BI predpokladá, že zdroj odstránil duplicitné riadky. Keďže služba Power BI nerozlišuje malé a veľké písmená, spracúva dve hodnoty, ktoré sa líšia iba veľkosťou písmen ako duplikátom, zatiaľ čo zdroj ich nemusí považovať za také. V takýchto prípadoch nie je konečný výsledok nedefinovaný.

Ak sa chcete takejto situácii vyhnúť, ak používate režim DirectQuery so zdrojom údajov, ktorý rozlišuje malé a veľké písmená, normalizujte puzdro v zdrojovom dotaze alebo v Editore Power Query.

Medzery na úvodnej a koncovej ceste

Nástroj Power BI automaticky orezá všetky koncové medzery, ktoré nasledujú za textovými údajmi, ale neodstráni úvodné medzery, ktoré predchádzajú údaje. Ak sa chcete vyhnúť zámene, pri práci s údajmi obsahujúcimi medzery na začiatku alebo konci by ste mali použiť funkciu Text.Trim na odstránenie medzier na začiatku alebo konci textu. Ak neodstránite úvodné medzery, vzťah sa možno nepodarí vytvoriť z dôvodu duplicitných hodnôt alebo vizuály môžu vrátiť neočakávané výsledky.

Nasledujúci príklad znázorňuje údaje o zákazníkoch: stĺpec Name obsahujúci meno zákazníka a stĺpec Index jedinečný pre každú položku. Názvy sa zobrazia v úvodzovkách, aby boli jasné. Meno zákazníka sa opakuje štyrikrát, ale vždy s rôznymi kombináciami medzier na vedúcich a koncových miestach. Tieto variácie sa môžu vyskytnúť pri manuálnom zadávaní údajov v priebehu času.

Riadok Úvodný priestor Koncové miesto Meno Index Dĺžka textu
1 Nie Nie "Dylan Williams" 1 14
2 Nie Áno "Dylan Williams" 10 15
3 Áno Nie " Dylan Williams" 20 15
4 Áno Áno " Dylan Williams " 40 16

V Editore Power Query sa výsledné údaje zobrazia takto.

Snímka obrazovky znázorňujúca textové údaje s rôznymi medzerami na vedúcich aj koncových miestach v Editore Power Query.

Keď v službe Power BI po načítaní údajov prejdete na kartu Table, bude vyzerať rovnaká tabuľka ako na nasledujúcom obrázku s rovnakým počtom riadkov ako predtým.

Snímka obrazovky s rovnakými textovými údajmi po načítaní do služby Power BI vráti rovnaký počet riadkov ako predtým.

Vizuál založený na týchto údajoch však vráti len dva riadky.

Snímka obrazovky vizuálu tabuľky na základe tých istých údajov, ktoré vracajú len dva riadky údajov.

Na predchádzajúcom obrázku má prvý riadok celkovú hodnotu 60 pre pole Index , takže prvý riadok vo vizuáli predstavuje posledné dva riadky načítaných údajov. Druhý riadok s celkovým indexom hodnotou 11 predstavuje prvé dva riadky. Rozdiel v počte riadkov medzi vizuálom a tabuľkou údajov je spôsobený tým, že nástroj automaticky odstráni alebo oreže koncové medzery, ale nie úvodné medzery. Takže nástroj vyhodnotí prvý a druhý riadok a tretí a štvrtý riadok ako identický a vizuál vráti tieto výsledky.

Toto správanie môže tiež spôsobiť chybové hlásenia súvisiace so vzťahmi, pretože sa zistia duplicitné hodnoty. V závislosti od konfigurácie vzťahov sa napríklad môže zobraziť chyba podobná nasledujúcemu obrázku:

Snímka obrazovky chybového hlásenia o duplicitných hodnotách.

V iných situáciách možno nebudete môcť vytvoriť vzťah many-to-one alebo one-to-one, pretože sa zistia duplicitné hodnoty.

Snímka obrazovky dialógového okna vzťahu znázorňujúca chybu

Tieto chyby môžete sledovať späť do úvodných alebo koncových medzier a vyriešiť ich pomocou Text.Trimalebo Format>Orezať v časti Transformovať, čím odstránite medzery v Editore Power Query.

Typ Pravda/Nepravda

Typ údajov True/False je booleovská hodnota hodnoty True alebo False. Ak chcete dosiahnuť čo najlepšie a naj konzistentnejšie výsledky, pri načítaní stĺpca, ktorý obsahuje booleovské informácie pravda/nepravda, do služby Power BI nastavte typ stĺpca na hodnotu True/False.

Power BI v určitých situáciách údaje konvertuje a zobrazuje inak. Táto časť popisuje bežné prípady konverzie booleovských hodnôt a spôsob riešenia konverzií, ktoré v Power BI vytvoria neočakávané výsledky.

V tomto príklade načítate údaje o tom, či sa vaši zákazníci zaregistrovali do bulletinu. Hodnota TRUE označuje, že sa zákazník zaregistroval do bulletinu, a hodnota FALSE znamená, že zákazník sa nezaregistroval.

Pri publikovaní zostavy do služby Power BI sa však v stĺpci so stavom registrácie bulletinu zobrazuje 0 a –1 namiesto očakávaných hodnôt TRUE alebo FALSE. Nasledujúce kroky popisujú, ako k tejto konverzii dochádza a ako tomu zabrániť.

Zjednodušený dotaz pre túto tabuľku sa zobrazí na nasledujúcom obrázku:

Snímka obrazovky zobrazujúca stĺpce nastavené na možnosť Booleovská hodnota.

Typ údajov stĺpca Prihlásiť sa na odber bulletinu je nastavený na hodnotu Any, v dôsledku čoho služba Power BI načíta údaje do modelu ako textového.

Snímka obrazovky zobrazujúca údaje načítané do služby Power BI.

Keď pridáte jednoduchú vizualizáciu, ktorá zobrazuje podrobné informácie o zákazníkoch, údaje sa zobrazia vo vizuáli očakávaným spôsobom, a to v aplikácii Power BI Desktop, ako aj pri publikovaní v službe Power BI.

Snímka obrazovky vizuálu, ktorá zobrazuje údaje, ktoré sa zobrazujú očakávaným spôsobom.

Keď však obnovíte sémantický model v službe Power BI , stĺpec prihlásený na odber bulletinu vo vizuáloch však zobrazí hodnoty –1 a 0namiesto toho, aby ich zobrazil ako TRUE alebo FALSE:

Snímka obrazovky vizuálu, ktorá zobrazuje údaje, ktoré sa po obnovení zobrazujú v neočakávanom formáte.

Pri opätovnom publikovaní zostavy z aplikácie Power BI Desktop sa v stĺpci Prihlásenie na odber bulletinu znova zobrazí TRUE alebo nepravda podľa očakávaní. Po obnovení sa však v službe Power BI hodnoty opäť zmenia, aby zobrazovali –1 a 0.

Riešením na zabránenie tejto situácie je nastaviť všetky booleovské stĺpce na zadanie hodnoty True/False v aplikácii Power BI Desktop a opätovné publikovanie zostavy.

Snímka obrazovky znázorňujúca zmenu typu údajov stĺpca na hodnotu True/False.

Po vykonaní zmeny sa v vizualizácii zobrazujú hodnoty v stĺpci Prihlásiť sa na odber bulletinu trochu inak. Namiesto toho, aby boli všetky veľké písmená zadané v tabuľke, veľkým písmenom je len prvé písmeno. Táto zmena je jedným z výsledkov zmeny typu údajov stĺpca.

Snímka obrazovky s hodnotami, ktoré sa zobrazujú inak pri zmene typu údajov.

Po zmene typu údajov, opätovnom publikovaní v službe Power BI a obnovení sa v zostave zobrazia hodnoty podľa očakávania ako True alebo False.

Snímka obrazovky zobrazujúca hodnoty true alebo false, ktoré používajú typ údajov True/False, sa zobrazujú podľa očakávania po obnovení.

Ak to chcete zhrnúť, pri práci s booleovskými údajmi v službe Power BI sa uistite, že stĺpce sú nastavené na typ údajov True/False v aplikácii Power BI Desktop.

Prázdny typ

Blank je typ údajov DAX, ktorý predstavuje a nahrádza hodnoty null SQL. Prázdnu hodnotu môžete vytvoriť pomocou funkcie BLANK a prázdne hodnoty môžete testovať pomocou logickej funkcie ISBLANK.

Binárny typ

Typ údajov Binary môžete použiť na znázornenie všetkých údajov v binárnom formáte. V Editore Power Query môžete tento typ údajov použiť pri načítavaní binárnych súborov, ak ho skonvertujete na iné typy údajov pred načítaním do modelu Power BI.

Binárne stĺpce nie sú podporované v dátovom modeli Power BI. Výber Binárne existuje v ponukách Zobrazenia tabuľky a Zobrazenia zostavy z starších dôvodov, ale ak sa pokúsite načítať binárne stĺpce do modelu Power BI, môžu sa vyskytnúť chyby.

Nota

Ak je binárny stĺpec výstupom krokov dotazu, pokus o obnovenie údajov prostredníctvom brány môže spôsobiť chyby. Odporúča sa, aby ste ako posledný krok vo vašich dotazoch explicitne odstránili všetky binárne stĺpce.

Typ tabuľky

DAX používa tabuľkový typ údajov v mnohých funkciách, ako sú napríklad agregácie a výpočty časovej inteligencie. Niektoré funkcie vyžadujú odkaz na tabuľku. Iné funkcie vracajú tabuľku, ktorú potom môžete použiť ako vstup pre ďalšie funkcie.

V niektorých funkciách, ktoré ako vstup vyžadujú tabuľku, môžete zadať výraz, ktorý sa vyhodnotí do tabuľky. Niektoré funkcie vyžadujú odkaz na základnú tabuľku. Informácie o požiadavkách na konkrétne funkcie nájdete v referenčných informáciách o funkciách jazyka DAX.

Implicitná a explicitná konverzia typu údajov

Každá funkcia DAX má špecifické požiadavky na typy údajov, ktoré sa používajú ako vstupy a výstupy. Niektoré funkcie napríklad vyžadujú celé čísla pre niektoré argumenty a dátumy pre ostatné. Iné funkcie vyžadujú text alebo tabuľky.

Ak sú údaje v stĺpci, ktorý zadáte ako argument, nekompatibilné s typom údajov, ktorý funkcia vyžaduje, DAX môže vrátiť chybu. Ak je to však možné, DAX sa pokúsi implicitne konvertovať údaje na požadovaný typ údajov.

Napríklad:

  • Ak zadáte dátum ako reťazec, DAX analyzuje reťazec a pokúsi sa ho pretypovať ako jeden z formátov dátumu a času Windows.
  • Môžete pridať TRUE + 1 a získať výsledok 2, pretože DAX implicitne konvertuje TRUE na číslo 1a vykoná operáciu 1 + 1.
  • Ak pridáte hodnoty v dvoch stĺpcoch s jednou hodnotou vyjadrenou ako text ("12") a druhá ako číslo (12), DAX implicitne konvertuje reťazec na číslo a potom vykoná sčítanie pre číselný výsledok. Výraz = "22" + 22 vráti 44.
  • Ak sa pokúsite zreťaziť dve čísla, DAX ich zobrazí ako reťazce a potom ich zreťazí. Výraz = 12 & 34, vráti "1234".

Tabuľky implicitných konverzií údajov

Operátor určuje typ konverzie dax zadaním hodnôt, ktoré vyžaduje pred vykonaním požadovanej operácie. V nasledujúcich tabuľkách sú uvedené operátory a konverzia dax sa vykonáva na každom type údajov, keď spáruje s typom údajov v pretínanej bunke.

Nota

Tieto tabuľky neobsahujú typ údajov Text. Ak je číslo zastúpené v textovom formáte, v niektorých prípadoch sa Power BI snaží určiť typ čísla a reprezentovať údaje ako číslo.

Sčítanie (+)

CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
CELÉHO ČÍSLA CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
MIEN MENA MENA SKUTOČNÝ Dátum a čas
reálneho SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ Dátum a čas
dátumu a času Dátum a čas Dátum a čas Dátum a čas Dátum a čas

Napríklad, ak operácia sčítanie používa reálne číslo v kombinácii s údajmi meny, DAX skonvertuje obe hodnoty na REÁLNE ČÍSLO a vráti výsledok ako REÁLNE ČÍSLO.

Odčítanie (-)

V nasledujúcej tabuľke je hlavičkou riadka minuend (ľavá strana) a hlavičkou stĺpca je podchytený (pravá strana).

CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
CELÉHO ČÍSLA CELÉ ČÍSLO MENA SKUTOČNÝ SKUTOČNÝ
MIEN MENA MENA SKUTOČNÝ SKUTOČNÝ
reálneho SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ
dátumu a času Dátum a čas Dátum a čas Dátum a čas Dátum a čas

Ak napríklad operácia odčítania používa dátum s akýmkoľvek iným typom údajov, DAX skonvertuje obe hodnoty na dátumy a vrátená hodnota je tiež dátumom.

Nota

Dátové modely podporujú unárny operátor – (záporné), ale tento operátor nezmení typ údajov operandu.

Násobenie (*)

CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
CELÉHO ČÍSLA CELÉ ČÍSLO MENA SKUTOČNÝ CELÉ ČÍSLO
MIEN MENA SKUTOČNÝ MENA MENA
reálneho SKUTOČNÝ MENA SKUTOČNÝ SKUTOČNÝ

Ak napríklad operácia násobenia skombinuje celé číslo s reálnym číslom, DAX skonvertuje obe čísla na reálne čísla a vrátená hodnota je tiež REÁLNE ČÍSLO.

Delenie (/)

V nasledujúcej tabuľke je hlavičkou riadka čitateľ a hlavičkou stĺpca je menovateľ.

CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
CELÉHO ČÍSLA SKUTOČNÝ MENA SKUTOČNÝ SKUTOČNÝ
MIEN MENA SKUTOČNÝ MENA SKUTOČNÝ
reálneho SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ
dátumu a času SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ

Ak napríklad operácia delenia kombinuje celé číslo s hodnotou meny, DAX skonvertuje obe hodnoty na reálne čísla a výsledok je tiež reálne číslo.

Operátory porovnávania

Vo výrazoch porovnania jazyk DAX berie do úvahy booleovské hodnoty väčšie ako hodnoty reťazcov a hodnoty reťazcov väčšie ako číselné hodnoty alebo hodnoty dátumu a času. Čísla a hodnoty dátumu a času majú rovnaké poradie.

DAX nevykonáva žiadne implicitné konverzie pre booleovské hodnoty alebo hodnoty reťazcov. Hodnota BLANK alebo prázdna hodnota sa konvertuje na 0, alebo False, v závislosti od typu údajov druhej porovnávanej hodnoty.

Toto správanie ilustrujú nasledujúce výrazy DAX:

  • =IF(FALSE()>"true","Expression is true", "Expression is false") vráti hodnotu "Výraz je pravdivý".

  • =IF("12">12,"Expression is true", "Expression is false") vráti hodnotu "Výraz je pravdivý".

  • =IF("12"=12,"Expression is true", "Expression is false") vráti hodnotu "Výraz je nepravdivý".

JAZYK DAX vykonáva implicitné konverzie pre číselné typy alebo typy dátumu a času tak, ako je to popísané v nasledujúcej tabuľke:

Porovnanie
Operátor
CELÉ ČÍSLO MENA SKUTOČNÝ Dátum a čas
CELÉHO ČÍSLA CELÉ ČÍSLO MENA SKUTOČNÝ SKUTOČNÝ
MIEN MENA MENA SKUTOČNÝ SKUTOČNÝ
reálneho SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ
dátumu a času SKUTOČNÝ SKUTOČNÝ SKUTOČNÝ Dátum a čas

Prázdne hodnoty, prázdne reťazce a nulové hodnoty

DAX predstavuje hodnotu null, prázdnu hodnotu, prázdnu bunku alebo chýbajúcu hodnotu podľa rovnakého nového typu hodnoty, BLANK. Prázdne hodnoty môžete generovať aj pomocou funkcie BLANK alebo môžete prázdne hodnoty testovať pomocou funkcie ISBLANK.

Spôsob, akým operácie ako sčítanie alebo zreťazenie spracúvať prázdne hodnoty, závisí od jednotlivých funkcií. V nasledujúcej tabuľke sú zhrnuté rozdiely medzi tým, ako vzorce DAX a Microsoft Excel spracúvali prázdne hodnoty.

Výraz DAX Vynikať
PRÁZDNE + PRÁZDNE PRÁZDNY 0 (nula)
PRÁZDNE + 5 5 5
PRÁZDNE * 5 PRÁZDNY 0 (nula)
5/PRÁZDNE Nekonečno Chyba
0/PRÁZDNE Nan Chyba
PRÁZDNE/PRÁZDNE PRÁZDNY Chyba
NEPRAVDA ALEBO PRÁZDNE NEPRAVDA NEPRAVDA
NEPRAVDA A PRÁZDNE NEPRAVDA NEPRAVDA
TRUE ALEBO BLANK PRAVDIVÝ PRAVDIVÝ
TRUE A BLANK NEPRAVDA PRAVDIVÝ
PRÁZDNE ALEBO PRÁZDNE PRÁZDNY Chyba
PRÁZDNE A PRÁZDNE PRÁZDNY Chyba

Pomocou aplikácie Power BI Desktop a údajov môžete vykonávať najrôznejšie činnosti. Ďalšie informácie o možnostiach služby Power BI nájdete v týchto zdrojoch: