Tipos de dados em Modelos de Dados

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Em um Modelo de Dados, cada coluna tem um tipo de dados associado que especifica o tipo de dados que a coluna pode armazenar: números inteiros, números decimais, texto, dados monetários, datas e horas e assim por diante. Os tipos de dados também determinam os tipos de operações que você pode fazer na coluna, e quanta memória será necessária para armazenar os valores na coluna.

Se você estiver usando o suplemento Power Pivot, poderá alterar o tipo de dados de uma coluna. Talvez seja necessário fazer isso se uma coluna de data tiver sido importada como uma cadeia de caracteres, mas você precisa que ela seja diferente. Para obter mais informações, consulte Definir o tipo de dados de uma coluna no Power Pivot.

Neste artigo

Sumário de tipos de dados

Tipo de dados de tabela

Conversão implícita e explícita de tipos de dados em fórmulas DAX

Tabela de conversões implícitas de dados

Adição (+)

Subtração (-)

Multiplicação (*)

Divisão (/)

Operadores de comparação

Manipulando espaços em branco, cadeias de caracteres vazias e valores zero

Sumário de tipos de dados

A tabela a seguir lista os tipos de dados com suporte em um Modelo de Dados. Quando você importa dados ou usa um valor em uma fórmula, mesmo quando a fonte de dados original contém um tipo de dados diferente, os dados serão convertidos em um desses tipos de dados Valores que resultam de fórmulas também usam esses tipos de dados.

Tipo de dados no Excel

Tipos de dados no DAX

Descrição

Número Inteiro

Um valor inteiro de 64 bits (oito bytes) 1, 2

Números sem casas decimais. Inteiros podem ser números positivos ou negativos, mas devem ser números inteiros entre -9.223.372.036.854.775.808 (-2^63) e 9.223.372.036.854.775.807 (2^63-1).

Número Decimal

Um número real de 64 bits (oito bytes) 1, 2

Números reais são números que podem ter casas decimais. Os números reais abrangem uma grande variedade de valores:

Valores negativos de -1,79E +308 a -2,23E -308

Zero

Valores positivos de 2,23E -308 a 1,79E + 308

No entanto, o número de dígitos significativos está limitado a 15 dígitos decimais.

TRUE/FALSE

Booliano

Um valor Verdadeiro ou Falso.

Texto

Cadeia de Caracteres

Uma cadeia de caracteres de dados de caractere Unicode. Podem ser cadeias de caracteres, números ou datas representados em um formato de texto.

O comprimento máximo de uma cadeia de caracteres é 268.4345.456 caracteres (256 megabytes de caracteres) ou 536.879.912 bytes.

Data

Data/hora

Datas e horas em uma representação de data-hora aceita.

As datas válidas são todas as datas depois de 1º de janeiro de 1900.

Moeda

Moeda

O tipo de dados de moeda permite valores entre -922.337.203.685.477,5808 e 922.337.203.685.477,5807 com quatro dígitos decimais de precisão fixa.

N/D

Em branco

Um espaço em branco é um tipo de dados no DAX que representa e substitui nulos SQL. É possível criar um espaço em branco usando a função BLANK e testar se há espaços em branco usando a função lógica, ISBLANK.

1 As fórmulas DAX não dão suporte a tipos de dados menores que os listados na tabela.

2 Se você tentar importar dados que tenham valores numéricos muito grandes, poderá haver falha na importação com o seguinte erro:

Erro de banco de dados na memória: a coluna '<nome da coluna>' da tabela '<nome da tabela>' contém o valor sem suporte '1,7976931348623157e+308'. A operação foi cancelada.

Esse erro ocorre porque o Power Pivot usa esse valor para representar nulos. Os valores na lista a seguir são sinônimos do valor nulo:

Valor

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2,2250738585072014e-308

Remova o valor dos dados e tentar importá-los novamente.

Tipo de dados de tabela

O DAX usa o tipo de dados de tabela em muitas funções, tais como agregações e cálculos de inteligência de hora. Algumas funções exigem uma referência a uma tabela; outras retornam uma tabela que pode ser usada como entrada para outras funções. Em algumas funções que exigem uma tabela como entrada, você pode especificar uma expressão avaliada para uma tabela; para algumas funções, uma referência a uma tabela base é necessária. Para obter mais informações sobre os requisitos de funções específicas, consulte Referência de Função DAX.

Conversão implícita e explícita de tipos de dados em fórmulas DAX

Cada função DAX tem requisitos específicos quanto aos tipos de dados que são usados como entradas e saídas. Por exemplo, algumas funções exigem inteiros para alguns argumentos e datas para outros; outras funções exigem texto ou tabelas.

Se os dados na coluna especificada como um argumento forem incompatíveis com o tipo de dados exigido pela função, em muitos casos DAX retornará um erro. Entretanto, sempre que possível, DAX tentará converter implicitamente os dados no tipo de dados exigido. Por exemplo:

  • Você pode digitar uma data como uma cadeia de caracteres; DAX analisará a cadeia e tentará convertê-la em um dos formatos de data e hora do Windows.

  • Você pode adicionar TRUE + 1 e obter o resultado 2, pois TRUE é implicitamente convertido no número 1 e a operação 1+1 é executada.

  • Se você adicionar valores em duas colunas e um valor for representado como texto ("12") e o outro como um número (12), o DAX converterá implicitamente a cadeia de caracteres em um número e, em seguida, adicionará para um resultado numérico. A seguinte expressão retorna 44: = "22" + 22

  • Se você tentar concatenar dois números, o suplemento do Excel irá apresentá-los como cadeias de caracteres e, em seguida, concatená-los. A expressão a seguir retorna "1234": = 12 & 34

A tabela a seguir resume as conversões implícitas de tipo de dados executadas em fórmulas. O Excel executa conversões implícitas sempre que possível quando exigido pela operação especificada.

Tabela de conversões implícitas de dados

O tipo de conversão executada é determinado pelo operador, que converte os valores exigidos antes de executar a operação solicitada. Estas tabelas listam os operadores e indicam a conversão que é executada em cada tipo de dados na coluna quando ele é emparelhado com o tipo de dados na linha de interseção.

Observação : Tipos de dados de texto não são incluídos nestas tabelas. Quando um número é representado como em um formato de texto, em alguns casos, o Power Pivot tentará determinar o tipo de número e representá-lo como um número.

Adição (+)

Operador (+)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

Data/hora

CURRENCY

CURRENCY

CURRENCY

REAL

Data/hora

REAL

REAL

REAL

REAL

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Por exemplo, se um número real for usado em uma operação de adição com dados de moeda, os dois valores serão convertidos em REAL, e o resultado será retornado como REAL.

Subtração (-)

Na tabela a seguir, o cabeçalho da linha é o minuendo (lado esquerdo) e o cabeçalho da coluna é o subtraendo (lado direito).

Operador (-)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Por exemplo, se uma data for usada em uma operação de subtração com qualquer outro tipo de dados, os dois valores serão convertidos em datas, e o valor de retorno também será uma data.

Observação : Os modelos de dados também dão suporte ao operador unário, - (negativo), mas esse operador não altera o tipo de dados do operando.

Multiplicação (*)

Operador (*)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Por exemplo, se um inteiro for combinado com um número real em uma operação de multiplicação, os dois números serão convertidos em números reais, e o valor de retorno também será REAL.

Divisão (/)

Na tabela a seguir, o cabeçalho da linha é o numerador e o cabeçalho da coluna é o denominador.

Operador (/)

(Linha/coluna)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

REAL

REAL

REAL

REAL

Por exemplo, se um inteiro for combinado com um valor de moeda em uma operação de divisão, os dois valores serão convertidos em números reais, e o resultado também será um número real.

Operadores de comparação

Em expressões de comparação, os valores Boolianos são considerados maiores que os valores da cadeia de caracteres, que são considerados maiores que os valores numéricos ou de data/hora; os números e os valores de data/hora são considerados da mesma classificação. Nenhuma conversão implícita é executada para valores Boolianos ou da cadeia de caracteres; o valor BLANK ou em branco é convertido em 0/""/false, dependendo do tipo de dados do outro valor comparado.

As seguintes expressões DAX ilustram esse comportamento:

=IF(False() > "true", "Expressão for verdadeira", "Expressão for falsa"), retorna "Expressão for verdadeira"

= IF("12">12,"Expression is true", "Expression is false"), retorna "Expressão for verdadeira".

= IF("12"=12,"Expression is true", "Expression is false"), retorna "Expressão for falsa"

As conversões são executadas implicitamente para tipos numéricos ou de data/hora conforme a descrição na seguinte tabela:

Operador de comparação

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

REAL

REAL

REAL

Data/hora

Início da página

Manipulando espaços em branco, cadeias de caracteres vazias e valores zero

No DAX, um valor nulo, em branco, uma célula vazia ou um valor ausente são todos representados pelo mesmo novo tipo de valor, um BLANK. Você também pode gerar espaços em branco com o uso da função BLANK, ou testar se há espaços em branco com o uso da função ISBLANK.

A forma como espaços em branco são tratados em operações, como adição ou concatenação, depende de cada função. A tabela a seguir resume as diferenças entre DAX e fórmulas do Microsoft Excel, com relação à maneira como esses espaços em branco são manipulados.

Expressão

DAX

Excel

BLANK + BLANK

BLANK

0 (zero)

BLANK +5

5

5

BLANK * 5

BLANK

0 (zero)

5/BLANK

Infinito

Erro

0/BLANK

NaN

Erro

BLANK/BLANK

BLANK

Erro

FALSE OR BLANK

FALSE

FALSE

FALSE AND BLANK

FALSE

FALSE

TRUE OR BLANK

VERDADEIRO

VERDADEIRO

TRUE AND BLANK

FALSE

TRUE

BLANK OR BLANK

BLANK

Erro

BLANK AND BLANK

BLANK

Erro

Para obter detalhes sobre como uma função particular ou operador lida com espaços em branco, consulte os tópicos individuais para cada função DAX, na seção, Referência de função DAX.

Início da página

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×