Vrste podatkov v podatkovnih modelih

Velja za
Excel za Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

V podatkovnem modelu ima vsak stolpec povezan podatkovni tip, ki določa vrsto podatkov, ki jih lahko vsebuje stolpec: cela števila, decimalna števila, besedilo, denarni podatki, datumi in ure itd. Podatkovni tip določa tudi, katere vrste operacij lahko izvajate v stolpcu in koliko pomnilnika je potrebno za shranjevanje vrednosti v stolpec.

Če uporabljate dodatek Power Pivot, lahko spremenite podatkovni tip stolpca. To boste morda morali storiti, če je bil stolpec z datumom uvožen kot niz, vendar mora biti nekaj drugega. Če želite več informacij, glejte Nastavitev podatkovnega tipa stolpca v dodatku Power Pivot.

V tem članku

Povzetek podatkovnih tipov

V spodnji tabeli so navedeni podatkovni tipi, ki jih podpira podatkovni model. Ko uvozite podatke ali uporabite vrednost v formuli, se podatki pretvorijo v enega od teh podatkovnih tipov, tudi če izvirni vir podatkov vsebuje drugačen podatkovni tip. Vrednosti, ki izhajajo iz formul, uporabljajo tudi te podatkovne tipe.

Podatkovni tip v Excelu Podatkovni tip v jeziku DAX Opis
Cela številka 64-bitna (osembajtovna) cela vrednost 1, 2 Števila, ki nimajo decimalnih mest. Cela števila so lahko pozitivna ali negativna števila, vendar morajo biti cela števila med -9.223.372.036.854.775.808 (-2^63) in 9.223.372.036.854.775.807 (2^63-1).
Decimalno število 64-bitna (osembajtovna) realna številka 1, 2 Realna števila so števila, ki imajo lahko decimalna mesta. Realna števila pokrivajo širok razpon vrednosti:
Negativne vrednosti od -1,79E +308 do -2,23E -308
Nič
Pozitivne vrednosti od 2,23E -308 do 1,79E + 308
Vendar pa je število pomembnih števk omejeno na 15 decimalnih števk.
RESNIČNO/NAPAČNO Logičen Vrednost »True« ali »False«.
Text (Besedilo) String Podatkovni niz znakov Unicode. Lahko so nizi, številke ali datumi, predstavljeni v besedilni obliki.
Največja dolžina niza je 268.435.456 znakov Unicode (256 mega znakov) ali 536.870.912 bajtov.
Datum Datum/čas Datumi in ure v sprejetem prikazu datuma in časa.
Veljavni datumi so vsi datumi po 1. januarju 1900.
Valuta Valuta Podatkovni tip valute omogoča vrednosti med -922.337.203.685.477.5808 in 922.337.203.685.477.5807 s štirimi decimalnimi številkami fiksne natančnosti.
Ni na voljo Prazno Prazen je podatkovni tip v jeziku DAX, ki predstavlja in nadomešča ničle SQL. Prazno lahko ustvarite s funkcijo BLANK, prazne vrednosti pa preskusite z logično funkcijo ISBLANK.

1 Formule jezika DAX ne podpirajo podatkovnih tipov, ki so manjši od tistih, ki so navedeni v tabeli.

2 Če poskusite uvoziti podatke z zelo velikimi številskimi vrednostmi, uvoz morda ne bo uspešen s to napako:

Napaka zbirke podatkov v pomnilniku: stolpec »<ime> stolpca« v tabeli »<ime> tabele« vsebuje vrednost »1.7976931348623157e+308«, ki ni podprta. Operacija je bila preklicana.

Do te napake pride, ker Power Pivot uporablja to vrednost za predstavitev ničel. Vrednosti na spodnjem seznamu so sopomenke za vrednost null:

Value (Vrednost)
9223372036854775807
-9223372036854775808
1,7976931348623158e+308
2.2250738585072014e-308

Odstranite vrednost iz podatkov in poskusite znova uvoziti.

Podatkovni tip tabele

DAX uporablja podatkovni tip tabele v številnih funkcijah, kot so združevanja in izračuni časovnega obveščanja. Nekatere funkcije zahtevajo sklicevanje na tabelo; Druge funkcije vrnejo tabelo, ki jo lahko nato uporabite kot vhod za druge funkcije. V nekaterih funkcijah, ki zahtevajo tabelo kot vnos, lahko določite izraz, ki se ovrednoti kot tabela; Za nekatere funkcije je potreben sklic na osnovno tabelo. Če želite več informacij o zahtevah določenih funkcij, glejte Sklic na funkcije jezika DAX.

Implicitna in eksplicitna pretvorba podatkovnih tipov v formulah DAX

Vsaka funkcija DAX ima posebne zahteve glede vrst podatkov, ki se uporabljajo kot vhodni in izhodni podatki. Nekatere funkcije na primer zahtevajo cela števila za nekatere argumente in datume za druge; Druge funkcije zahtevajo besedilo ali tabele.

Če podatki v stolpcu, ki ga določite kot argument, niso združljivi s podatkovnim tipom, ki ga zahteva funkcija, DAX v mnogih primerih vrne napako. Vendar pa bo DAX, kadar je to mogoče, poskušal implicitno pretvoriti podatke v zahtevani podatkovni tip. Primer:

  • Datum lahko vnesete kot niz, DAX pa ga bo razčlenil in ga poskušal predvajati kot eno od oblik zapisa datuma in časa v sistemu Windows.
  • Dodate lahko TRUE + 1 in dobite rezultat 2, ker je TRUE implicitno pretvorjena v številko 1 in se izvede operacija 1+1.
  • Če seštejete vrednosti v dva stolpca in je ena vrednost predstavljena kot besedilo (»12«), druga pa kot število (12), DAX implicitno pretvori niz v število in nato doda številski rezultat. Naslednji izraz vrne 44: = »22« + 22
  • Če poskusite združiti dve številki, ju bo Excel predstavil kot nize in nato združil. Naslednji izraz vrne »1234«: = 12 & 34

V spodnji tabeli so povzete implicitne pretvorbe podatkovnih tipov, ki se izvedejo v formulah. Excel izvaja implicitne pretvorbe, kadar je to mogoče, kot zahteva določena operacija.

Tabela implicitnih pretvorb podatkov

Vrsto pretvorbe, ki se izvede, določi operater, ki pred izvedbo zahtevane operacije odstrani vrednosti, ki jih potrebuje. V teh tabelah so navedeni operatorji in prikazana pretvorba, ki se izvede za vsak podatkovni tip v stolpcu, ko je seznanjen s podatkovnim tipom v vrstici, ki se seka.

Opomba

Besedilni podatkovni tipi niso vključeni v te tabele. Ko je število predstavljeno kot v obliki besedila, bo Power Pivot v nekaterih primerih poskušal določiti vrsto števila in ga predstaviti kot število.

Dodatek (+)

Operater (+) INTEGER CURRENCY REAL Datum/čas
INTEGER INTEGER CURRENCY REAL Datum/čas
CURRENCY CURRENCY CURRENCY REAL Datum/čas
REAL REAL REAL REAL Datum/čas
Datum/čas Datum/čas Datum/čas Datum/čas Datum/čas

Če je na primer realno število uporabljeno pri seštevanju v kombinaciji s podatki valute, se obe vrednosti pretvorita v REALNO in rezultat je REALEN.

Odštevanje (-)

V tej tabeli je glava vrstice minuend (leva stran), glava stolpca pa subtrahend (desna stran).

Operator (-) INTEGER CURRENCY REAL Datum/čas
INTEGER INTEGER CURRENCY REAL REAL
CURRENCY CURRENCY CURRENCY REAL REAL
REAL REAL REAL REAL REAL
Datum/čas Datum/čas Datum/čas Datum/čas Datum/čas

Če na primer uporabite datum v postopku odštevanja s katerim koli drugim podatkovnim tipom, sta obe vrednosti pretvorjeni v datume, vrnjena vrednost pa je tudi datum.

Opomba

Podatkovni modeli podpirajo tudi enolični operator - (negativen), vendar ta operator ne spremeni podatkovnega tipa operanda.

Množenje (*)

Operator (*) INTEGER CURRENCY REAL Datum/čas
INTEGER INTEGER CURRENCY REAL INTEGER
CURRENCY CURRENCY REAL CURRENCY CURRENCY
REAL REAL CURRENCY REAL REAL

Če pri množenju na primer združite celo število in realno število, se obe števili pretvorita v realni števili, vrnjena vrednost pa je tudi realna.

Delitev (/)

V naslednji tabeli je glava vrstice števec, glava stolpca pa imenovalec.

Operator (/)
(Vrstica/stolpec)
INTEGER CURRENCY REAL Datum/čas
INTEGER REAL CURRENCY REAL REAL
CURRENCY CURRENCY REAL CURRENCY REAL
REAL REAL REAL REAL REAL
Datum/čas REAL REAL REAL REAL

Če na primer pri deljenju združite celo število z vrednostjo valute, se obe vrednosti pretvorita v realna števila, rezultat pa je tudi realno število.

Operatorji primerjave

V primerjalnih izrazih se logične vrednosti obravnavajo kot večje od vrednosti niza, vrednosti nizov pa večje od številskih vrednosti ali vrednosti datuma/časa; Števila in vrednosti datuma/ure imajo enak red. Za logične vrednosti ali vrednosti nizov se ne izvedejo implicitne pretvorbe. Vrednost BLANK ali prazna vrednost se pretvori v 0/""/false, odvisno od podatkovnega tipa druge primerjane vrednosti.

To delovanje ponazarjajo ti izrazi jezika DAX:

=IF(FALSE()>,"true","Izraz je resničen", "Izraz je neresničen"), vrne "Izraz je resničen"

=IF("12"12,>"Izraz je resničen", "Izraz je neresničen"), vrne "Izraz je resničen".

=IF("12"=12,"Izraz je resničen", "Izraz je neresničen"), vrne »Izraz je neresničen«

Pretvorbe se izvedejo implicitno za številske tipe ali vrste datum/čas, kot je opisano v tej tabeli:

Operator primerjave INTEGER CURRENCY REAL Datum/čas
INTEGER INTEGER CURRENCY REAL REAL
CURRENCY CURRENCY CURRENCY REAL REAL
REAL REAL REAL REAL REAL
Datum/čas REAL REAL REAL Datum/čas

Na vrh strani

Ravnanje s praznimi, praznimi nizi in ničelnimi vrednostmi

V jeziku DAX so ničelna, prazna vrednost, prazna celica ali manjkajoče vrednosti predstavljeni z isto novo vrsto vrednosti, tj. PRAZNO. Prazne celice lahko ustvarite tudi s funkcijo BLANK ali s funkcijo ISBLANK.

Način obravnave praznih vrednosti v operacijah, kot sta seštevanje ali združevanje, je odvisen od posamezne funkcije. V tej tabeli je povzetek razlik med formulami DAX in Microsoft Excel, in sicer glede na način obravnavanja praznih celic.

Izraz Formule DAX Excel
BLANK + BLANK PRAZNO 0 (ničla)
PRAZNO +5 5 5
PRAZNO * 5 PRAZNO 0 (ničla)
5/PRAZNO Neskončnost Napaka
0/PRAZNO NaN Napaka
PRAZNO/PRAZNO PRAZNO Napaka
FALSE ALI PRAZNO FALSE FALSE
FALSE IN BLANK FALSE FALSE
TRUE ALI BLANK TRUE TRUE
TRUE AND BLANK FALSE TRUE
PRAZNO ALI PRAZNO PRAZNO Napaka
PRAZNO IN PRAZNO PRAZNO Napaka

Če želite podrobnosti o tem, kako določena funkcija ali operator obravnava prazne celice, glejte posamezne teme za posamezno funkcijo jezika DAX v razdelku » Sklic funkcije DAX«.

Na vrh strani