Tipurile de date din modelele de date

Într-un model de date, fiecare coloană conține un tip de date asociat care specifică tipul de date pe care coloana îl poate accepta: numere întregi, numere zecimale, text, date financiare, date și ore etc. Tipul de date determină și ce tipuri de operațiuni puteți efectua pe coloană și cantitatea de memorie utilizată pentru a stoca valorile în coloană.

Dacă utilizați programul de completare Power Pivot, puteți modifica tipul de date al unei coloane. Poate fi necesar să faceți acest lucru dacă o coloană de date calendaristice a fost importată ca șir, însă dvs. aveți nevoie ca aceasta să fie de alt tip. Pentru informații suplimentare, consultați secțiunea Setarea tipului de date al unei coloane în Power Pivot.

În acest articol

Rezumatul tipurilor de date

Tipul de date tabel

Conversia tipurilor de date implicite și explicite în formulele DAX

Tabel de conversii implicite de date

Adunare (+)

Scădere (-)

Înmulțire (*)

Împărțire (/)

Operatori de comparare

Utilizarea șirurilor necompletate, a șirurilor goale și a valorilor zero

Rezumatul tipurilor de date

Următorul tabel listează tipurile de date acceptate într-un model de date. Când importați date sau când utilizați o valoare într-o formulă, chiar dacă sursa de date inițială conține un alt tip de date, datele sunt convertite într-unul dintre aceste tipuri de date. Valorile care rezultă din formule utilizează, de asemenea, aceste tipuri de date.

Tip de date în Excel

Tip de date în DAX

Descriere

Număr întreg

O valoare de număr întreg de 64 de biți (opt octeți) 1, 2

Numere care nu conțin zecimale. Numerele întregi pot fi numere pozitive sau negative, însă trebuie să fie numere întregi cuprinse între -9.223.372.036.854.775.808 (-2^63) și 9.223.372.036.854.775.807 (2^63-1).

Număr zecimal

Nu număr real de 64 de biți (opt octeți) 1, 2

Numerele reale sunt numere care pot conține zecimale. Numerele reale acoperă o gamă largă de valori:

Valori negative de la -1,79E +308 la -2,23E -308

Zero

Valori pozitive de la 2,23E -308 la 1,79E + 308

Totuși, numărul de cifre importante este limitat la 15 cifre zecimale.

TRUE/FALSE

Boolean

Fie valoarea True, fie valoarea False.

Text

Șir

Un șir de date cu caractere Unicode. Pot fi șiruri, numere sau date reprezentate în format text.

Lungimea maximă a șirului este 268.435.456 de caractere Unicode (256 de megacaractere) sau 536.870.912 octeți.

Dată calendaristică

Dată/oră

Date și ore într-o reprezentare dată-oră acceptată.

Datele calendaristice valide sunt toate datele după 1 ianuarie 1900.

Monedă

Monedă

Tipul de date monedă permite valori cuprinse între -922.337.203.685.477,5808 și 922.337.203.685.477,5807 cu patru cifre zecimale cu precizie fixă.

Nu se aplică

Valoare goală

O valoare goală este un tip de date din DAX ce reprezintă și înlocuiește valorile null din SQL. Puteți crea o valoare goală utilizând funcția BLANK și puteți testa valorile goale utilizând funcția logică ISBLANK.

1 Formulele DAX nu acceptă tipuri de date mai mici decât cele listate în tabel.

2 Dacă încercați să importați date care au valori numerice foarte mari, este posibil ca importul să nu reușească, cu următoarea eroare:

Eroare la baza de date din memorie: Coloana „<nume coloană>” a tabelului „<nume tabel>” conține valoarea „1,7976931348623157e+308”, care nu este acceptată. Operațiunea a fost revocată.

Această eroare apare deoarece Power Pivot utilizează valoarea respectivă pentru a reprezenta valorile nule. Valorile din următoarea listă sunt sinonime pentru valoarea nulă:

Valoare

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2,2250738585072014e-308

Eliminați valoarea din datele dvs. și încercați să importați din nou.

Tipul de date tabel

DAX utilizează un tip de date tabel în multe funcții, cum ar fi agregările și calculele Time Intelligence. Unele funcții necesită o referință la un tabel; alte funcții returnează un tabel ce poate fi utilizat apoi ca intrare pentru alte funcții. În anumite funcții ce necesită un tabel ca intrare, puteți specifica o expresie ce se evaluează la un tabel; pentru anumite funcții, este necesară o referință la un tabel de bază. Pentru informații legate de cerințele pentru anumite funcții, consultați secțiunea Referința funcțiilor DAX.

Conversia tipurilor de date implicite și explicite în formulele DAX

Fiecare funcție DAX are cerințe specifice, cum ar fi tipurile de date care sunt utilizate ca intrări și ieșiri. De exemplu, anumite funcții necesită numere întregi pentru anumite argumente și date calendaristice pentru altele; alte funcții necesită text sau tabele.

Dacă datele din coloana pe care o specificați ca argument sunt incompatibile cu tipul de date solicitat de funcție, DAX, în multe cazuri, va returna o eroare. Totuși, ori de câte ori este posibil, DAX va încerca să convertească în mod implicit datele la tipul de date necesar. De exemplu:

  • Puteți introduce o dată calendaristică drept șir, iar DAX va analiza șirul și va încerca să îi facă conversia într-unul dintre formatele dată și oră Windows.

  • Puteți adăuga TRUE + 1 și puteți obține rezultatul 2, deoarece valoarea TRUE este convertită în mod implicit la numărul 1, efectuându-se operațiunea 1+1.

  • Dacă adăugați valori în două coloane, iar o valoare se întâmplă să fie reprezentată ca text („12”) și cealaltă ca număr (12), DAX va converti în mod implicit șirul la un număr, apoi efectuează adunarea pentru un rezultat numeric. Următoarea expresie returnează 44: = „22” + 22

  • Dacă încercați să concatenați două numere, aplicația Excel le va prezenta ca șiruri, apoi le va concatena. Următoarea expresie returnează „1234”: = 12 & 34

Următorul tabel centralizează conversiile implicite ale tipurilor de date care sunt efectuate în formule. Aplicația Excel efectuează conversii implicite ori de câte ori este posibil, după cum este solicitat de operațiunea specificată.

Tabel de conversii implicite de date

Tipul de conversie efectuat este determinat de operator, care face conversia valorilor de care are nevoie înainte de a efectua operațiunea solicitată. Aceste tabele listează operatorii și prezintă conversia ce este efectuată asupra fiecărui tip de date din coloană când sunt asociați tipului de date din rândul cu care se intersectează.

Notă : Tipurile de date text nu sunt incluse în aceste tabele. Când nu număr este reprezentat în format text, în unele cazuri, Power Pivot va încerca să determine tipul de număr și să îl reprezinte ca număr.

Adunare (+)

Operator (+)

INTEGER

CURRENCY

REAL

Dată/oră

INTEGER

INTEGER

CURRENCY

REAL

Dată/oră

CURRENCY

CURRENCY

CURRENCY

REAL

Dată/oră

REAL

REAL

REAL

REAL

Dată/oră

Dată/oră

Dată/oră

Dată/oră

Dată/oră

Dată/oră

De exemplu, dacă un număr real este utilizat într-o operație de adunare în combinație cu datele de tip monedă, ambele valori sunt convertite la REAL, iar rezultatul este returnat ca REAL.

Scădere (-)

În următorul tabel, antetul de rând este descăzut (în partea stângă) și antetul de coloană este scăzător (în partea dreaptă).

Operator (-)

INTEGER

CURRENCY

REAL

Dată/oră

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Dată/oră

Dată/oră

Dată/oră

Dată/oră

Dată/oră

De exemplu, dacă o dată calendaristică este utilizată într-o operație de scădere cu orice alt tip de date, ambele valori sunt convertite în date calendaristice, iar valoarea returnată este, de asemenea, o dată calendaristică.

Notă :  Modelele de date acceptă, de asemenea, operatorul unar, - (negativ), dar acest operator nu modifică tipul de date al operandului.

Înmulțire (*)

Operator (*)

INTEGER

CURRENCY

REAL

Dată/oră

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

De exemplu, dacă un număr întreg este combinat cu un număr real într-o operație de înmulțire, ambele numere sunt convertite în numere reale, iar valoarea returnată este, de asemenea, valoarea REAL.

Împărțire (/)

În următorul tabel, antetul de rând este numărătorul și antetul de coloană este numitorul.

Operator (/)

(Rând/coloană)

INTEGER

CURRENCY

REAL

Dată/oră

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Dată/oră

REAL

REAL

REAL

REAL

De exemplu, dacă un număr întreg este combinat cu o valoare de tip monedă într-o operație de împărțire, ambele valori sunt convertite în numere reale, iar rezultatul este, de asemenea, un număr real.

Operatori de comparare

În expresiile de comparare, valorile booleene sunt considerate mai mari decât valorile de tip șir, iar valorile de tip șir sunt considerate mai mari decât valorile numerice sau de tip dată/oră; numerele și valorile de tip dată/oră sunt considerate a fi de același nivel. Nu sunt efectuate conversii implicite pentru valorile booleene sau de tip șir; BLANK sau valorile goale sunt convertite la 0/""/false în funcție de tipul de date al celeilalte valori comparate.

Următoarele expresii DAX ilustrează acest comportament:

=IF(FALSE()>"adevărat";"Expresia este adevărată"; "Expresia este falsă") returnează "Expresia este adevărată"

=IF("12">12;"Expresia este adevărată"; "Expresia este falsă") returnează "Expresia este adevărată".

=IF("12"=12;"Expresia este adevărată"; "Expresia este falsă") returnează "Expresia este falsă"

Conversiile sunt efectuate în mod implicit pentru tipurile numerice sau dată/oră așa cum se descrie în următorul tabel:

Operator de comparare

INTEGER

CURRENCY

REAL

Dată/oră

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Dată/oră

REAL

REAL

REAL

Dată/oră

Începutul paginii

Utilizarea șirurilor necompletate, a șirurilor goale și a valorilor zero

În DAX, o valoare null, o valoare necompletată, o celulă goală sau o valoare lipsă sunt toate reprezentate de același nou tip de valoare, o valoare BLANK. Puteți genera, de asemenea, valori goale utilizând funcția BLANK sau puteți testa valorile goale utilizând funcția ISBLANK.

Modul în care valorile goale sunt utilizate în operații, cum ar fi adunarea sau concatenarea, depinde de funcția individuală. Următorul tabel rezumă diferențele dintre formulele DAX și Microsoft Excel, în ceea ce privește modul de utilizarea a valorilor goale.

Expresie

DAX

Excel

BLANK + BLANK

BLANK

0 (zero)

BLANK +5

5

5

BLANK * 5

BLANK

0 (zero)

5/BLANK

Infinit

Eroare

0/BLANK

NaN

Eroare

BLANK/BLANK

BLANK

Eroare

FALSE OR BLANK

FALSE

FALSE

FALSE AND BLANK

FALSE

FALSE

TRUE OR BLANK

TRUE

TRUE

TRUE AND BLANK

FALSE

TRUE

BLANK OR BLANK

BLANK

Eroare

BLANK AND BLANK

BLANK

Eroare

Pentru detalii referitoare la modul în care o anumită funcție sau un anumit operator utilizează valorile goale, consultați subiectele pentru fiecare funcție DAX, din secțiunea, Referința funcțiilor DAX.

Începutul paginii

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×