Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

W modelu danych każda kolumna ma skojarzony typ danych, który określa typ danych, które może zawierać kolumna: liczby pełne, liczby dziesiętne, tekst, dane pieniężne, daty i godziny itp. Typ danych określa również, jakie operacje na kolumnie można wykonać, i ile pamięci potrzeba do przechowywania wartości w kolumnie.

Jeśli korzystasz z dodatku Power Pivot, możesz zmienić typ danych kolumny. Może to być konieczne, jeśli kolumna z datą została zaimportowana jako ciąg, ale musi być czymś innym. Aby uzyskać więcej informacji, zobacz Ustawianie typu danych kolumny w Power Pivot.

W tym artykule

Podsumowanie typów danych

W poniższej tabeli wymieniono typy danych obsługiwane w modelu danych. W przypadku importowania danych lub używania wartości w formule, nawet jeśli oryginalne źródło danych zawiera inny typ danych, dane są konwertowane na jeden z tych typów. Wartości wynikające z formuł również używają tych typów danych.

Typ danych w programie Excel

Typ danych w języku DAX

Opis

Liczba całość

64-bitowa (osiem bajtów) wartość całkowita 1, 2

Liczby bez miejsc dziesiętnych. Liczby całkowite mogą być liczbami dodatnimi lub ujemnmi, ale muszą to być liczby całkowite z od -9 223 372 036 854 775 808 (-2^63) do 9 223 372 036 854 775 807 (2^63-1).

Liczba dziesiętna

64-bitowa (osiem bajtów) liczba rzeczywista 1, 2

Liczby rzeczywiste to liczby, które mogą mieć miejsca dziesiętne. Liczby rzeczywiste obejmują szeroki zakres wartości:

Wartości ujemne od -1,79E +308 do -2,23E -308

Zero

Wartości dodatnie od 2,23E -308 do 1,79E + 308

Liczba cyfr znaczących jest jednak ograniczona do 15 cyfr dziesiętnych.

PRAWDA/FAŁSZ

wartość logiczna

Wartość Prawda lub Fałsz.

Tekst

Ciąg

Ciąg danych znaku Unicode. Mogą to być ciągi, liczby lub daty reprezentowane w formacie tekstowym.

Maksymalna długość ciągu to 268 435 456 znaków Unicode (256 mega znaków) lub 536 870 912 bajtów.

Data

Data/godzina

Daty i godziny w zaakceptowanych reprezentacjach daty i godziny.

Prawidłowe daty to wszystkie daty po 1 stycznia 1900 roku.

Waluta

Waluta

Typ danych Waluta umożliwia wartości z od -922 337 203 685 477,5808 do 922 337 203 685 477,5807 z czterema dziesiętnym cyframi stałej dokładności.

nd.

Pusty

Puste to typ danych w języku DAX reprezentujący i zamieniany na SQL null. Można utworzyć puste pole przy użyciu funkcji PUSTE i sprawdzić, czy wartości nie są puste, korzystając z funkcji logicznej CZY.PUSTA.

1 Formuły języka DAX nie obsługują typów danych mniejszych niż wymienione w tabeli.

2 Jeśli spróbujesz zaimportować dane, które mają bardzo duże wartości liczbowe, importowanie może się nie powieść z następującym błędem:

Błąd bazy danych w pamięci: kolumna "<nazwa kolumny>" tabeli "<nazwa tabeli>" zawiera wartość "1,7976931348623157e+308", która nie jest obsługiwana. Operacja została anulowana.

Ten błąd występuje, ponieważ Power Pivot używa tej wartości do reprezentowania wartości null. Wartości na poniższej liście są synonimami wartości null:

Value (Wartość)

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2,2250738585072014e-308

Usuń wartość z danych i spróbuj ponownie zaimportować.

Typ danych tabeli

Język DAX używa typu danych tabeli w wielu funkcjach, takich jak agregacje i obliczenia analizy czasowej. Niektóre funkcje wymagają odwołania do tabeli. Inne funkcje zwracają tabelę, która może być następnie używana jako dane wejściowe do innych funkcji. W niektórych funkcjach wymagających tabeli jako danych wejściowych można określić wyrażenie, które będzie obliczać tabelę. W przypadku niektórych funkcji wymagane jest odwołanie do tabeli podstawowej. Aby uzyskać informacje na temat wymagań określonych funkcji, zobacz Informacje dotyczące funkcji języka DAX.

Niejawne i jawne konwersja typu danych w formułach języka DAX

Każda funkcja języka DAX ma określone wymagania dotyczące typów danych używanych jako dane wejściowe i wyjściowe. Na przykład niektóre funkcje wymagają liczb całkowitych dla niektórych argumentów i dat dla innych. inne funkcje wymagają tekstu lub tabel.

Jeśli dane w kolumnie określone jako argument są niezgodne z typem danych wymaganym przez funkcję, w wielu przypadkach język DAX zwraca błąd. Jednak tam, gdzie to możliwe, język DAX spróbuje niejawnie przekonwertować dane na wymagany typ danych. Na przykład:

  • Możesz wpisać datę jako ciąg, a język DAX przechowa ten ciąg i spróbuje go użyć jako jednego z formatów daty i godziny Windows daty i godziny.

  • Możesz dodać wartość PRAWDA + 1 i uzyskać wynik 2, ponieważ wartość PRAWDA jest niejawnie konwertowana na liczbę 1 i wykonywana jest operacja 1+1.

  • Jeśli dodasz wartości w dwóch kolumnach i jedna wartość będzie przedstawiana jako tekst ("12"), a druga jako liczba (12), język DAX niejawnie przekonwertuje ciąg na liczbę, a następnie doda wynik liczbowy. Następujące wyrażenie zwraca wartość 44: = "22" + 22

  • W przypadku próby połączenia dwóch liczb zostaną one Excel jako ciągi, a następnie zsuń. Następujące wyrażenie zwraca wartość "1234": = 12 & 34

W poniższej tabeli podsumowano niejawne konwersje typu danych wykonywane w formułach. Excel niejawnych konwersji, jeśli to możliwe, zgodnie z wymaganiami określonej operacji.

Tabela niejawnych konwersji danych

Typ wykonywanej konwersji jest ustalany przez operator, który rzutuje wymagane wartości przed wykonaniem żądanej operacji. Te tabele zawierają listę operatorów i wskazują sposób konwersji, która jest wykonywana na każdym typie danych w kolumnie, gdy jest sparowana z typem danych w wierszu przecinania się.

Uwaga: Te tabele nie zawierają danych typu Tekst. Gdy liczba jest reprezentowana jako w formacie tekstowym, w niektórych przypadkach Power Pivot próbie określenia typu liczby i reprezentowania jej jako liczby.

Dodawanie (+)

Operator (+)

INTEGER

CURRENCY

REAL

Data/godzina

INTEGER

INTEGER

CURRENCY

REAL

Data/godzina

CURRENCY

CURRENCY

CURRENCY

REAL

Data/godzina

REAL

REAL

REAL

REAL

Data/godzina

Data/godzina

Data/godzina

Data/godzina

Data/godzina

Data/godzina

Jeśli na przykład w połączeniu z danymi walutowymi zostanie użyta liczba rzeczywista, obie wartości zostaną przekonwertowane na wartość REAL, a wynik zostanie zwrócony jako REAL.

Odejmowanie (-)

W poniższej tabeli nagłówek wiersza to minuend (lewa strona), a nagłówek kolumny to element podrzędny (po prawej stronie).

Operator (-)

INTEGER

CURRENCY

REAL

Data/godzina

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/godzina

Data/godzina

Data/godzina

Data/godzina

Data/godzina

Jeśli na przykład w operacji odejmowania zostanie użyta data z innym typem danych, obie wartości zostaną przekonwertowane na daty, a zwrócona wartość również będzie datą.

Uwaga: Modele danych obsługują również operator liczby niearchiwowej (-), ale ten operator nie zmienia typu danych operandu.

Mnożenie (*)

Operator (*)

INTEGER

CURRENCY

REAL

Data/godzina

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Jeśli na przykład w operacji mnożenia zostanie połączona liczba całkowita z liczbą rzeczywistą, obie liczby zostaną przekonwertowane na liczby rzeczywiste, a zwrócona wartość również będzie mieć wartość REAL.

Dział (/)

W poniższej tabeli nagłówek wiersza jest licznikiem, a nagłówek kolumny to mianownik.

Operator (/)

(Wiersz/kolumna)

INTEGER

CURRENCY

REAL

Data/godzina

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Data/godzina

REAL

REAL

REAL

REAL

Jeśli na przykład w operacji dzielenia zostanie połączona liczba całkowita z wartością walutową, obie wartości zostaną przekonwertowane na liczby rzeczywiste, a wynik również będzie liczbą rzeczywistą.

Operatory porównania

W wyrażeniach porównania Wartości logiczne są uznawane za większe niż wartości ciągów, a wartości ciągów są traktowane jako większe niż wartości liczbowe lub wartości daty/czasu. liczby oraz wartości daty/czasu są traktowane jako takie same. Nie są wykonywane żadne konwersje niejawne dla wartości logicznych ani ciągowych. Wartość pusta lub pusta jest konwertowana na 0/"/fałsz w zależności od typu danych drugiej porównywanej wartości.

Następujące wyrażenia języka DAX ilustrują to zachowanie:

=JEŻELI(FAŁSZ()>"prawda","Wyrażenie ma wartość prawdziwą", "Wyrażenie ma wartość fałszywą"), zwraca wartość "Wyrażenie jest prawdziwe".

=JEŻELI("12">12;"Wyrażenie ma wartość prawdziwą", "Wyrażenie ma wartość fałszywą"), zwraca wartość "Wyrażenie jest prawdziwe".

=JEŻELI("12"=12;"Wyrażenie jest prawdziwe", "Wyrażenie ma wartość fałszywą"), zwraca wartość "Wyrażenie jest fałszywe"

Konwersje są wykonywane niejawnie dla typów liczb lub daty/czasu, jak opisano w poniższej tabeli:

Operator porównania

INTEGER

CURRENCY

REAL

Data/godzina

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/godzina

REAL

REAL

REAL

Data/godzina

Początek strony

Obsługa pustych, pustych ciągów i wartości zerowych

W języku DAX wartość null, wartość pusta, pusta komórka lub brakująca wartość są reprezentowane przez ten sam nowy typ wartości ( WARTOŚĆ PUSTA). Można również wygenerować puste komórki przy użyciu funkcji PUSTE lub sprawdzić, czy wartości nie są puste, korzystając z funkcji CZY.PUSTA.

Sposób obsługi pustych wartości w operacjach, takich jak dodawanie lub złączanie, zależy od poszczególnych funkcji. W poniższej tabeli podsumowano różnice między językami DAX i Microsoft Excel, w sposób obsługi pustych formuł.

Wyrażenie

JĘZYK DAX

Excel

BLANK + BLANK

BLANK (PUSTE)

0 (zero)

BLANK +5

5

5

BLANK * 5

BLANK (PUSTE)

0 (zero)

5/BLANK

Nieskończoność

Błąd

0/BLANK

NaN

Błąd

PUSTE/PUSTE

BLANK (PUSTE)

Błąd

FAŁSZ LUB PUSTE

FALSE

FALSE

FAŁSZ I PUSTE

FALSE

FALSE

PRAWDA LUB PUSTE

TRUE

TRUE

PRAWDA I PUSTE

FAŁSZ

PRAWDA

PUSTE LUB PUSTE

BLANK (PUSTE)

Błąd

PUSTE I PUSTE

BLANK (PUSTE)

Błąd

Aby uzyskać szczegółowe informacje na temat obsługi pustych wartości przez określoną funkcję lub operator, zobacz poszczególne tematy dotyczące poszczególnych funkcji języka DAX w sekcji Informacje dotyczące funkcji języka DAX.

Początek strony

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×