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 stolpec vsebuje: cela števila, decimalna števila, besedilo, denarni podatki, datumi in ure itd. Vrsta podatkov določa tudi, katere vrste operacij lahko izvajate v stolpcu in koliko pomnilnika je potrebnega za shranjevanje vrednosti v stolpcu.

Če uporabljate dodatek Power Pivot, lahko spremenite podatkovni tip stolpca. To boste morda morali narediti, če je bil stolpec z datumi uvožen kot niz, vendar potrebujete 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 podatkovni vir vsebuje drugačno vrsto podatkov. Te vrste podatkov uporabljajo tudi vrednosti, ki nastanejo iz formul.

Vrsta podatkov v Excelu Vrsta podatkov v jeziku DAX Opis
Celo število 64-bitno (osembajtno) vrednost celega števila 1, 2 Števila brez decimalnih mest. Celo število je lahko pozitivno ali negativno, vendar mora biti celo število med -9.223.372.036.854.775.808 (-2^63) in 9.223.372.036.854.775.807 (2^63-1).
Decimalno število 64-bitno (osembajtno) realno število 1, 2 Realna števila so števila, ki imajo lahko decimalna mesta. Realna števila pokrivajo širok nabor vrednosti:
Negativne vrednosti od -1,79E +308 do -2,23E -308
Nič
Pozitivne vrednosti od 2.23E-308 do 1.79E + 308
Vendar je število pomembnih števk omejeno na 15 decimalnih mest.
RESNIČNO/NAPAČNO Logičen Vrednost »True« ali »False«.
Text (Besedilo) String Podatkovni niz znaka 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 časi v sprejeti predstavitvi datuma in časa.
Vsi veljavni datumi so vsi datumi po 1. januarju 1900.
Valuta Valuta Podatkovni tip »Valuta« dovoljuje vrednosti med -922.337.203.685.477.5808 in 922.337.203.685.477.5807 s štirimi decimalnimi števkami nespremenljive natančnosti.
Ni na voljo Prazno Prazno je podatkovni tip v jeziku DAX, ki predstavlja in zamenja vrednosti »SQL null«. Prazno polje lahko ustvarite s funkcijo BLANK, preverite pa prazne celice z logično funkcijo ISBLANK.

1 Formule 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 uspe in prikaže se ta napaka:

Napaka zbirke podatkov v pomnilniku: stolpec »<Ime> stolpca« tabele »<Ime> tabele« vsebuje vrednost »1.7976931348623157e+308«, ki ni podprta. Postopek je preklican.

Do te napake pride, ker Power Pivot uporabi to vrednost za predstavitev ničelnih vrednosti. Vrednosti na tem seznamu so sopomenke za ničelno vrednost:

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

Odstranite vrednost iz podatkov in poskusite uvoziti znova.

Podatkovni tip tabele

DAX uporablja podatkovni tip tabele v številnih funkcijah, kot so združevanja in izračuni s podatki o času. Nekatere funkcije zahtevajo sklic na tabelo; Druge funkcije vrnejo tabelo, ki jo je mogoče uporabiti kot vhod za druge funkcije. V nekaterih funkcijah, ki za vnos zahtevajo tabelo, lahko določite izraz, ki ovrednoti tabelo. Za nekatere funkcije je zahtevan sklic na osnovno tabelo. Če želite informacije o zahtevah določenih funkcij, glejte Sklic funkcije jezika DAX.

Implicitna in eksplicitna pretvorba podatkovnega tipa v formulah jezika DAX

Vsaka funkcija DAX ima določene zahteve glede vrst podatkov, ki so uporabljeni kot vhodi in izhodi. Nekatere funkcije na primer zahtevajo cela števila za nekatere argumente in datume za druge; Za druge funkcije potrebujete besedilo ali tabele.

Če podatki v stolpcu, ki ga določite kot argument, niso združljivi z vrsto podatkov, ki jo zahteva funkcija, DAX v mnogih primerih vrne napako. Kjer pa bo mogoče DAX poskusil implicitno pretvoriti podatke v zahtevano vrsto podatkov. Primer:

  • Datum lahko vnesete kot niz, DAX pa ga bo razčlenil in ga poskušal prenesti v eno od oblik zapisa datuma in ure v sistemu Windows.
  • Lahko dodate TRUE + 1 in dobite rezultat 2, saj je vrednost TRUE implicitno pretvorjena v število 1 in se izvede operacija 1 + 1.
  • Če seštejete vrednosti v dveh stolpcih in je ena vrednost predstavljena kot besedilo (»12«), druga pa kot število (12), DAX implicitno pretvori niz v številko in nato sešteje številski rezultat. Ta izraz vrne 44: = "22" + 22
  • Če poskusite spojiti dve števili, ju Excel predstavi kot niz in nato združi. Ta izraz vrne »1234«: = 12 & 34

V tej tabeli je povzetek implicitnih pretvorb podatkovnih tipov, ki se izvedejo v formulah. Excel izvaja implicitne pretvorbe, kadar koli je to mogoče, kot to zahteva določena operacija.

Tabela implicitnih pretvorb podatkov

Vrsto izvedene pretvorbe določa operator, ki preleže vrednosti, ki jih potrebuje, preden izvede zahtevano operacijo. V teh tabelah so navedeni operatorji in označene pretvorbe, ki se izvedejo za vsak podatkovni tip v stolpcu, ko je seznanjen s podatkovnim tipom v križajoči vrstici.

Opomba

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

Seštevanje (+)

Operator (+) 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