Partilhar via


Definir cálculos nomeados em uma exibição de fonte de dados (Analysis Services)

Um cálculo nomeado é uma expressão SQL representada como uma coluna calculada. Essa expressão aparece e se comporta como uma coluna na tabela. Um cálculo nomeado permite estender o esquema relacional de tabelas ou exibições existentes em uma exibição de fonte de dados sem modificar as tabelas ou exibições na fonte de dados subjacente. Considere os seguintes exemplos:

  • Crie um único cálculo nomeado derivado de várias colunas em uma tabela de fatos (por exemplo, criando o Valor do Imposto multiplicando uma taxa de imposto por um preço de venda).

  • Construa um nome fácil de usar para um membro de dimensão.

  • Para melhorar o desempenho da consulta, crie um cálculo nomeado no DSV em vez de um membro calculado em um cubo. Os cálculos nomeados são realizados durante o processamento, enquanto os membros calculados são determinados no momento da consulta.

Criando Cálculos Nomeados

Observação

Você não pode adicionar um cálculo nomeado a uma consulta nomeada nem pode basear uma consulta nomeada em uma tabela que contém um cálculo nomeado.

Ao criar um cálculo nomeado, especifique um nome, a expressão SQL e, opcionalmente, uma descrição do cálculo. A expressão SQL pode se referir a outras tabelas na exibição da fonte de dados. Depois que o cálculo nomeado é definido, a expressão em um cálculo nomeado é enviada ao provedor para a fonte de dados e validada como a seguinte instrução SQL na qual <Expression> contém a expressão que define o cálculo nomeado.

SELECT 
   <Table Name in Data Source>.*, 
   <Expression> AS <Column Name> 
FROM 
   <Table Name in Data Source> AS <Table Name in Data Source View>

O tipo de dados da coluna é determinado pelo tipo de dados do valor escalar retornado pela expressão. Se o provedor não encontrar erros na expressão, a coluna será adicionada à tabela.

As colunas referenciadas na expressão não devem ser qualificadas ou devem ser qualificadas apenas pelo nome da tabela. Por exemplo, para se referir à coluna SaleAmount em uma tabela SaleAmount ou Sales.SaleAmount é válido, mas dbo.Sales.SaleAmount gera um erro.

A expressão não é colocada entre parênteses automaticamente. Portanto, se uma expressão, como uma instrução SELECT, exigir parênteses, você deverá digitar os parênteses na caixa Expressão . Por exemplo, a expressão a seguir só será válida se você digitar os parênteses.

(SELECT Description FROM Categories WHERE Categories.CategoryID = CategoryID)

Adicionar ou editar um cálculo nomeado

  1. No SSDT (SQL Server Data Tools), abra o projeto ou conecte-se ao banco de dados que contém a exibição da fonte de dados na qual você deseja definir um cálculo nomeado.

  2. No Gerenciador de Soluções, expanda a pasta Exibições da Fonte de Dados e clique duas vezes na exibição da fonte de dados.

  3. Clique com o botão direito do mouse na tabela na qual você deseja definir o cálculo nomeado nas Tabelas ou no painel Diagrama e clique em Novo Cálculo Nomeado. Clique com o botão direito do mouse no nome da tabela e não em um atributo. O menu deve ser semelhante ao seguinte:

    Captura de tela do espaço de trabalho do diagrama, menu do botão direito do mouse

    Observação

    Para localizar uma tabela ou exibição, você pode usar a opção Localizar Tabela clicando no menu Exibição da Fonte de Dados ou clicando com o botão direito do mouse em uma área aberta dos painéis Tabelas ou Diagrama .

  4. Na caixa de diálogo Criar Cálculos Nomeados , faça o seguinte:

    • Na caixa de texto Nome da Coluna , digite o nome da nova coluna.

    • Na caixa de texto Descrição , digite uma descrição para a nova coluna.

    • Na caixa de texto Expressão , digite a expressão que produz o conteúdo da nova coluna no dialeto SQL apropriado para o provedor de dados.

  5. Clique em OK.

    A coluna de cálculo nomeada aparece como a última coluna na tabela de exibição da fonte de dados. Um símbolo de calculadora indica que a coluna contém um cálculo nomeado.

Excluir um cálculo nomeado

Ao tentar excluir um cálculo nomeado, você será solicitado com uma lista dos objetos definidos no projeto ou banco de dados que serão invalidados pela exclusão. Examine a lista cuidadosamente antes de excluir o cálculo.

Consulte Também

Definir consultas nomeadas em uma exibição de fonte de dados (Analysis Services)