Compartilhar via


Criar uma tabela calculada

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Um tabela calculada é um objeto computado baseado em uma expressão ou consulta DAX, derivado do todo ou de parte de outras tabelas no mesmo modelo.

Um problema de design comum que as tabelas calculadas podem resolver é ter uma interface com uma dimensão com função múltipla em um contexto específico para que você possa expô-la como uma estrutura de consulta em aplicativos cliente. Você pode lembrar que uma dimensão de role-playing é simplesmente uma tabela exibida em vários contextos. Um exemplo clássico é a tabela Date, manifestada como OrderDate, ShipDate ou DueDate, dependendo da relação de chave estrangeira. Ao criar uma tabela calculada para ShipDate explicitamente, você obtém uma tabela autônoma disponível para consultas como sendo totalmente operável como qualquer outra tabela. Outro uso inclui configurar um conjunto de linhas filtrado, um subconjunto ou um superconjunto de colunas de outras tabelas existentes. Com isso, você pode manter a tabela original intacta ao criar variações dessa tabela para dar suporte a cenários específicos.

Usar tabelas calculadas para obter as melhores vantagens exigirá que você saiba pelo menos um pouco de DAX. Ao trabalhar com expressões para sua tabela, pode ajudar a saber que uma tabela calculada contém uma única partição com um DAXSource, em que a expressão é uma expressão DAX.
Há uma CalculatedTableColumn para cada coluna retornada pela expressão, em que SourceColumn é o nome da coluna retornada (semelhante a DataColumns em tabelas não calculadas).

Pelo menos uma tabela já deve existir antes que você possa criar uma tabela calculada. Se você estiver criando uma tabela calculada como um objeto de tabela computada autônomo, poderá primeiro criar uma tabela importando de uma fonte de dados de arquivo (csv, xls, xml). O arquivo de onde você importa pode ter uma única coluna e um único valor. Em seguida, você pode ocultar essa tabela.

Como criar uma tabela calculada

  1. Primeiro, verifique se o modelo tabular tem um nível de compatibilidade de 1200 ou superior. Você pode verificar a propriedade Nível de Compatibilidade no modelo no SSDT.

  2. Alterne para a Exibição de Dados. Você não pode criar uma tabela calculada na Exibição de Diagrama.

  3. Selecione Tabela>Nova tabela calculada.

  4. Digite ou cole uma expressão DAX (veja abaixo algumas ideias).

  5. Dê um nome para a tabela.

  6. Crie relações com outras tabelas no modelo. Consulte Criar uma relação entre duas tabelas se precisar de ajuda com esta etapa.

  7. Faça referência à tabela em cálculos ou expressões no seu modelo ou use Analisar no Excel para exploração de dados ad hoc.

Replicar uma dimensão com função múltipla

Na barra de fórmulas, digite uma fórmula DAX que obtém uma cópia de outra tabela. Depois que a tabela calculada for populada, dê a ela um nome descritivo e configure uma relação que use a chave estrangeira específica à função. Por exemplo, no banco de dados Adventure Works, você pode criar uma tabela calculada para Data de Vencimento e usar DueDateKey como a base de uma relação com a tabela de fatos.

=DimDate  

Resumido ou filtrado

Na barra Fórmula, insira uma expressão DAX que filtra, resume ou manipula um modelo para conter as linhas desejadas. Esse exemplo agrupa por vendas, cor e moeda.

=SUMMARIZECOLUMNS(DimProduct[Color]  
, DimCurrency[CurrencyName]   
, "Sales" , SUM(FactInternetSales[SalesAmount])  
)  

Superconjunto usando colunas de várias tabelas

Na barra de fórmulas, digite uma expressão DAX que combine colunas de várias tabelas. Nesse caso, a saída da consulta lista a categoria do produto para cada moeda.

=CROSSJOIN(DimProductCategory, DimCurrency)  

Confira também

Nível de compatibilidade
DAX (Expressões de Análise de Dados) no Analysis Services
Noções básicas sobre DAX em modelos tabulares