Partilhar via


Designer de Consulta Relacional (SSAS)

O designer de consulta relacional ajuda você a criar uma consulta que especifica os dados a serem recuperados dos bancos de dados relacionais do Microsoft SQL Server e do Banco de Dados SQL do Microsoft Azure e do Microsoft SQL Server 2008 R2 Parallel Data Warehouse. Use o designer de consulta gráfica para explorar os metadados, compilar interativamente a consulta e exibir os resultados da consulta. Use o designer de consulta baseado em texto para exibir a consulta que foi criada pelo designer de consultas gráficas ou modificar uma consulta. Também é possível importar uma consulta existente de um arquivo ou relatório.

Se preferir, você pode escrever a consulta no idioma SQL usando o editor baseado em texto. Para mudar para o designer de consulta baseado em texto, na barra de ferramentas, clique em Editar como Texto. Depois de editar uma consulta no designer de consulta baseado em texto, você não poderá mais usar o designer de consulta gráfica.

Observação

Para especificar uma consulta para os tipos de fonte de dados Oracle, OLE DB, ODBC e Teradata, você deve usar o designer de consulta baseado em texto.

Importante

Os usuários acessam fontes de dados quando criam e executam consultas. Você deve conceder permissões mínimas nas fontes de dados, como permissões somente leitura.

As credenciais do usuário atual, não as credenciais especificadas na página Informações de Representação, são usadas para se conectar à fonte de dados quando uma consulta é executada.

Designer de Consultas Gráficas

No designer de consultas gráficas, você pode gerenciador as tabelas e exibições do banco de dados, compilar interativamente a instrução SQL SELECT que especifica as tabelas e colunas de banco de dados das quais recuperar dados de um conjunto de dados. Você escolhe os campos a serem incluídos no conjunto de dados e, opcionalmente, especifica os filtros que limitam os dados desse conjunto. Você pode especificar que os filtros sejam usados como parâmetros e fornecer o valor do filtro em tempo de execução. Se você escolher várias tabelas, o designer de consulta descreverá a relação entre conjuntos de duas tabelas.

O designer de consultas gráficas é dividido em três áreas. Dependendo se a consulta usa tabelas/exibições ou procedimentos armazenados/funções com valor de tabela, o layout do designer de consulta muda.

Observação

O SQL Server 2008 R2 Parallel Data Warehouse não dá suporte a procedimentos armazenados ou funções com valor de tabela.

A figura a seguir mostra o designer de consultas gráficas quando ele é usado com tabelas ou exibições.

Designer gráfico para consultas

A figura a seguir mostra o designer de consultas gráficas quando ele é usado com procedimentos armazenados ou funções com valor de tabela.

Procedimento armazenado no designer de consultas gráficas

A tabela a seguir descreve a função de cada painel.

Painel Função
Exibição de banco de dados Mostra uma exibição hierárquica de tabelas, exibições, procedimentos armazenados e funções com valor de tabela que são organizadas por esquema de banco de dados.
Campos selecionados Exibe a lista de nomes de campos de banco de dados dos itens selecionados no painel de exibição Banco de Dados. Esses campos se tornam a coleção de campos do conjunto de dados.
Parâmetros de função Exibe a lista de parâmetros de entrada para procedimentos armazenados ou funções com valor de tabela no painel de exibição Banco de Dados.
Relacionamentos Exibe uma lista de relações inferidas de campos selecionados para tabelas ou exibições no painel Exibição do banco de dados ou as relações criadas manualmente.
Filtros aplicados Exibe uma lista de campos e critérios de filtragem para tabelas ou exibições na exibição Banco de Dados.
Resultados da consulta Exibe dados de exemplo do conjunto de resultados da consulta gerada automaticamente.

Painel Exibição de Banco de Dados

O painel Exibição de Banco de Dados exibe os metadados de objetos de banco de dados que você tem permissões para exibir, o que é determinado pela conexão da fonte de dados e credenciais. A exibição hierárquica exibe objetos de banco de dados organizados por esquema de banco de dados. Expanda o nó de cada esquema para exibir tabelas, exibições, procedimentos armazenados e funções com valor de tabela. Expanda uma tabela ou exibição para exibir as colunas.

Painel Campos Selecionados

O painel Campos Selecionados exibe os campos no conjunto de dados e os grupos e agregações a serem incluídos na consulta.

As opções a seguir são exibidas:

  • Campos selecionados Exibe os campos do banco de dados que você seleciona para tabelas ou exibições ou os parâmetros de entrada para procedimentos armazenados ou funções com valor de tabela. Os campos exibidos neste painel tornam-se a coleção de campos do conjunto de dados.

    Use o painel Dados do Relatório para exibir a coleção de campos de um conjunto de dados.

  • Grupo e Agregação Alterna o uso do agrupamento e das agregações na consulta. Se você desativar o recurso de agrupamento e agregação depois de adicionar o agrupamento e as agregações, eles serão removidos. O texto (nenhum) indica que não é usado nenhum agrupamento ou agregação. Se você reativar o recurso de agrupamento e agregação, o agrupamento e as agregações anteriores serão restaurados.

  • Excluir Campo Exclui o campo selecionado.

Grupo e Agregação

Consultas a bancos de dados com uma tabela grande podem retornar várias linhas de dados que são muito grandes para serem úteis e têm um impacto de desempenho na rede que transporta a grande quantidade de dados. Para limitar o número de linhas de dados, a consulta pode incluir agregações de SQL que resumem os dados no servidor de banco de dados.

As agregações fornecem resumos de dados, e os dados são agrupados para oferecer suporte à agregação que entrega os dados resumidos. Quando você usa uma agregação na consulta, os outros campos retornados pela consulta são agrupados automaticamente e a consulta inclui a cláusula SQL GROUP BY. É possível resumir dados sem adicionar uma agregação usando somente a opção Agrupado por na lista Grupo e Agregação . Muitas das agregações incluem uma versão que usa a palavra-chave DISTINCT. A inclusão de DISTINCT elimina valores duplicados.

O Microsoft SQL Server usa Transact-SQL e o Microsoft SQL Server 2008 R2 Parallel Data Warehouse usa SQL. Ambos os dialetos da linguagem SQL dão suporte à cláusula, à palavra-chave e às agregações fornecidas pelo designer de consulta.

Para obter mais informações sobre o Transact-SQL, consulte Transact-SQL Reference (Mecanismo de Banco de Dados) nos Manuais Online do SQL Server no msdn.microsoft.com.

A tabela a seguir lista as agregações e fornece descrições resumidas delas.

Agregado Descrição
Avg Retorna a média dos valores em um grupo. Implementa a agregação SQL AVG.
Contagem Retorna o número de itens de um grupo. Implementa a agregação COUNT do SQL.
Contagem Grande Retorna o número de itens de um grupo. Ela é a agregação SQL COUNT_BIG. A diferença entre COUNT e COUNT_BIG é que COUNT_BIG sempre retorna um bigint valor de tipo de dados.
Min Retorna o valor mínimo de um grupo. Implementa o agregador SQL MIN.
Max Retorna o valor máximo em um grupo. A implementação é a agregação MAX do SQL.
StDev Retorna o desvio padrão estatístico de todos os valores de um grupo. Implementa a agregação SQL STDEV.
StDevP Retorna o desvio padrão estatístico para a população de todos os valores da expressão especificada de um grupo. Implementa a agregação SQL STDEVP.
Soma Retorna a soma de todos os valores do grupo. Implementa a agregação SQL SUM.
Var Retorna a variação estatística de todos os valores do grupo. Implementa a agregação SQL VAR.
VarP Retorna a variação estatística para a população de todos os valores do grupo. Implementa a agregação SQL VARP.
Avg Distinct Retorna médias exclusivas. Implementa uma combinação da agregação AVG e da palavra-chave DISTINCT.
Contagem Distinta Retorna contagens exclusivas. Implementa uma combinação da agregação COUNT e da palavra-chave DISTINCT.
Contar grandes valores distintos Retorna a contagem exclusiva de itens de um grupo. Implementa uma combinação da agregação COUNT_BIG e da palavra-chave DISTINCT.
StDev Distinct Retorna desvios padrão estatísticos exclusivos. Implementa uma combinação da agregação STDEV e da palavra-chave DISTINCT.
StDevP Distinct Retorna desvios padrão estatísticos exclusivos. Implementa uma combinação da agregação STDEVP e da palavra-chave DISTINCT.
Soma Distinta Retorna somas exclusivas. Implementa uma combinação da agregação SUM e da palavra-chave DISTINCT.
Var Distinct Retorna variações estatísticas exclusivas. Implementa uma combinação da agregação VAR e da palavra-chave DISTINCT.
VarP Distinto Retorna variações estatísticas exclusivas. Implementa uma combinação da agregação VARP e da palavra-chave DISTINCT.

Painel Parâmetros de Função

O painel Parâmetros de Função exibe os parâmetros de um procedimento armazenado ou função com valor de tabela. As seguintes colunas são exibidas:

  • Nome do Parâmetro Exibe o nome do parâmetro definido pelo procedimento armazenado ou função com valor de tabela.

  • Valor Um valor a ser usado para o parâmetro quando a consulta é executada para recuperar dados a serem exibidos no painel Resultados da Consulta em tempo de design. Esse valor não é usado em tempo de execução.

Painel Relações

O painel Relações exibe as relações de junção. As relações podem ser detectadas automaticamente a partir de relações de chave estrangeira recuperadas dos metadados de banco do dados. Se preferir, você pode criá-las manualmente.

As opções a seguir são exibidas:

  • Detecção Automática Alterna o recurso de detecção automática que cria automaticamente relações entre tabelas. Se a detecção automática estiver ativada, o designer de consulta criará relações a partir de chaves estrangeiras nas tabelas; caso contrário, você deverá criar as relações manualmente. Quando você seleciona tabelas no painel Exibição do banco de dados , a detecção automática tenta criar relações automaticamente. Se você ativar a detecção automática depois de criar junções manualmente, essas junções serão descartadas.

    Importante

    Ao usar com o SQL Server 2008 R2 Parallel Data Warehouse, os metadados necessários para criar junções não são fornecidos e as relações não podem ser detectadas automaticamente. Se a consulta recuperar dados do SQL Server 2008 R2 Parallel Data Warehouse, todas as junções de tabela deverão ser criadas manualmente.

  • Adicionar Relação Adiciona uma relação à lista de Relações .

    Se a detecção automática estiver ativada, as tabelas cujas colunas são usadas na consulta serão adicionadas automaticamente à lista de Relações . Quando a detecção automática identifica que há duas tabelas relacionadas, uma tabela é adicionada à coluna Tabela Esquerda , a outra à coluna Tabela Direita e uma junção interna é criada entre elas. Cada relação gera uma cláusula JOIN na consulta. Se as tabelas não forem relacionadas, todas elas serão listadas na coluna Tabela Esquerda e a coluna Tipo de Junção indicará que as tabelas não estão relacionadas a outras tabelas. Quando a detecção automática estiver ativada, não será possível adicionar relações manualmente entre tabelas que a detecção automática considerar não relacionadas.

    Se a detecção automática estiver desativada, será possível adicionar e alterar relações entre tabelas. Clique em Editar Campos para especificar os campos a serem usados para unir as duas tabelas.

    A ordem na qual as relações são exibidas na lista de Relações é a ordem na qual as junções serão executadas na consulta. É possível alterar a ordem das relações movendo-as para cima e para baixo na lista.

    Ao usar várias relações em uma consulta, uma das tabelas em cada relação, exceto a primeira, deve ser referenciada em relações futuras.

    Se ambas as tabelas em uma relação forem referenciadas por uma relação anterior, a relação não irá gerar uma cláusula de junção à parte; em vez disso, uma condição de junção é adicionada à cláusula de junção gerada para a relação anterior. O tipo de junção é inferido pela relação anterior que referenciou as mesmas tabelas.

  • Editar Campos Abre a caixa de diálogo Editar Campos Relacionados na qual você adiciona e modifica relações entre tabelas. Você escolheu os campos nas tabelas direita e esquerda a serem unidos. É possível unir vários campos da tabela esquerda e da tabela direita para especificar várias condições de junção em uma relação. Os dois campos que unem as tabelas esquerda e direita não precisam ter o mesmo nome. O tipo de dados dos campos unidos deve ter tipos de dados compatíveis.

  • Excluir relação Exclui a relação selecionada***.**

  • Mover para Cima e Mover para Baixo Move relações para cima ou para baixo na lista de Relações . A sequência na qual as relações são colocadas na consulta pode afetar os resultados da consulta. As relações são adicionadas à consulta na ordem em que são exibidas na lista de Relações .

As seguintes colunas são exibidas:

  • Tabela Esquerda Exibe o nome da primeira tabela que faz parte de uma relação de junção.

  • Tipo de Junção Exibe o tipo de instrução SQL JOIN usada na consulta gerada automaticamente. Por padrão, se uma restrição de chave estrangeira for detectada, INNER JOIN será usada. Outros tipos de junção podem ser LEFT JOIN ou RIGHT JOIN. Se nenhum desses tipos de junção se aplicar, a coluna Tipo de Junção exibirá Não relacionado. Nenhuma junção CROSS JOIN é criada para tabelas não relacionadas. Em vez disso, você deve criar relações manualmente unindo colunas nas tabelas esquerda e direita. Para obter mais informações sobre tipos de JOINs, consulte "Conceitos básicos do JOIN" nos Manuais Online do SQL Server no msdn.microsoft.com..

  • Tabela Direita Exibe o nome da segunda tabela na relação de junção.

  • Campos de Junção Lista os pares de campos unidos. Se uma relação tiver várias condições de junção, os pares de campos unidos serão separados por vírgulas (,).

Painel Filtros Aplicados

O painel Filtros Aplicados exibe os critérios usados para limitar o número de linhas de dados recuperadas no tempo de execução. Os critérios especificados neste painel são usados para gerar uma cláusula SQL WHERE. Quando você seleciona a opção de parâmetro, um parâmetro é criado automaticamente.

As seguintes colunas são exibidas:

  • Nome do Campo Exibe o nome do campo ao qual aplicar os critérios.

  • Operador Exibe a operação a ser usada na expressão de filtro.

  • Valor Exibe o valor a ser usado na expressão de filtro.

  • Parâmetro Exibe a opção para adicionar um parâmetro à consulta.

Painel Resultados da Consulta

O painel Resultados da Consulta exibe os resultados para a consulta automaticamente gerada que é especificada por seleções nos outros painéis. As colunas do conjunto de resultados são os campos que você especifica no painel Campos Selecionados e os dados de linha são limitados pelos filtros que você especifica no painel Filtros Aplicados.

Esses dados representam valores da fonte de dados no momento em que você executa a consulta.

A ordem de classificação do conjunto de resultados é determinada pela ordem em que os dados são recuperados da fonte de dados. A ordem de classificação pode ser alterada modificando o texto da consulta diretamente. Para obter mais informações sobre como usar a cláusula GROUP BY em uma consulta, consulte "GROUP BY (Transact-SQL)" nos Manuais Online do SQL Server.

Barra de ferramentas do designer de consultas gráficas

A barra de ferramentas do designer de consulta gráfica fornece os botões a seguir para ajudá-lo a especificar ou exibir os resultados de uma consulta.

Botão Descrição
Editar como Texto Alterna para o designer de consulta baseado em texto para exibir a consulta gerada automaticamente ou para modificar a consulta.
Importação Importa uma consulta existente de um arquivo ou relatório. Há suporte para os tipos de arquivo .sql e .rdl.
Executar consulta Execute a consulta. O painel Resultados da consulta exibe o conjunto de resultados.

Entendendo consultas geradas automaticamente

Quando você seleciona tabelas e colunas ou procedimentos armazenados e exibições no painel Exibição de Banco de dados, o designer de consulta recupera a chave primária subjacente e relações de chave estrangeira do esquema de banco de dados. Ao analisar essas relações, o designer de consulta detecta as relações entre duas tabelas e adiciona junções à consulta. Dessa forma, é possível modificar a consulta adicionando grupos e agregações, adicionando ou alterando relações e adicionando filtros. Para exibir o texto da consulta que mostra as colunas das quais os dados são recuperados, as junções entre tabelas e qualquer grupo ou agregação, clique em Editar Como Texto.

Designer de Consulta baseado em texto

O designer de consulta baseado em texto fornece uma forma de definir uma consulta usando a linguagem de consulta compatível com a fonte de dados, executar a consulta e exibir os resultados durante o design. Você pode especificar várias instruções SQL, sintaxe de consulta ou comando para extensões de processamento de dados personalizadas e consultas especificadas como expressões.

Como o designer de consulta baseado em texto não pré-processa a consulta, ele pode acomodar qualquer tipo de sintaxe de consulta. É a ferramenta de designer de consulta padrão para muitos tipos de fonte de dados.

O designer de consulta baseado em texto exibe uma barra de ferramentas e os dois painéis a seguir:

  • Consulta Mostra o texto da consulta, o nome da tabela ou o nome do procedimento armazenado, dependendo do tipo de consulta. Nem todos os tipos de consulta estão disponíveis para todos os tipos de fontes de dados. Por exemplo, nome da tabela tem suporte apenas para o tipo de fonte de dados OLE DB.

  • Resultado Mostra os resultados da execução da consulta em tempo de design.

Barra de ferramentas do Designer de Consulta baseado em texto

O designer de consulta baseado em texto fornece uma única barra de ferramentas para todos os tipos de comando. A tabela a seguir lista cada botão da barra de ferramentas e suas respectivas funções.

Botão Descrição
Editar como Texto Alterna entre o designer de consulta baseado em texto e o designer de consultas gráficas. Nem todos os tipos de fonte de dados dão suporte aos designers de consultas gráficas.
Importação Importa uma consulta existente de um arquivo ou relatório. Há suporte apenas para tipos de arquivo sql e rdl.
Executar a consulta Executa a consulta e exibe o conjunto de resultados no painel Resultado.
Tipo de Comando Selecione Text, StoredProcedureou TableDirect. Se um procedimento armazenado tiver parâmetros, a caixa de diálogo Definir Parâmetros de Consulta será aberta quando você clicar em Executar na barra de ferramentas e os valores poderão ser preenchidos conforme necessário.

Observe que, se um procedimento armazenado retornar mais de um conjunto de resultados, somente o primeiro conjunto de resultados será usado para preencher o conjunto de dados. Observe também que
TableDirect está disponível apenas para o tipo de fonte de dados OLE DB.

Tipo de comando Text

Quando você cria um conjunto de dados SQL Server , o designer de consulta relacional é aberto por padrão. Para mudar para o designer de consulta baseado em texto, clique no botão de alternância Editar como Texto na barra de ferramentas. O designer de consulta baseado em texto apresenta dois painéis: Consulta e Resultado. A imagem a seguir define cada painel.

Designer de consultas genérico para consulta de dados relacionais

A tabela a seguir descreve a função de cada painel.

Painel Função
Consulta Exibe o texto da consulta SQL. Use este painel para gravar ou editar uma consulta SQL.
Resultado Exibe os resultados da consulta. Para executar a consulta, clique com o botão direito do mouse em qualquer painel e clique em Executarou clique no botão Executar na barra de ferramentas.

Exemplo

A consulta a seguir retorna a lista de nomes de uma tabela chamada ContactType.

SELECT Name FROM ContactType  

Quando você clica em Executar na barra de ferramentas, o comando no painel Consulta é executado e os resultados, uma lista de nomes, são exibidos no painel Resultado .

Tipo de comando StoredProcedure

Quando você seleciona o Comando typeStoredProcedure, o designer de consulta baseado em texto apresenta dois painéis: Consulta e Resultado. Insira o nome do procedimento armazenado no painel Consulta e clique em Executar na barra de ferramentas. Se o procedimento armazenado usar parâmetros, a caixa de diálogo Definir Parâmetros de Consulta será aberta. Insira os valores dos parâmetros do procedimento armazenado.

A figura a seguir mostra os painéis Consulta e Resultados quando você executa um procedimento armazenado. Neste caso, os parâmetros de entrada são constantes.

Procedimento armazenado no designer de consultas com base em texto

A tabela a seguir descreve a função de cada painel.

Painel Função
Consulta Exibe o nome do procedimento armazenado e os parâmetros de entrada.
Resultado Exibe os resultados da consulta. Para executar a consulta, clique com o botão direito do mouse em qualquer painel e clique em Executarou clique no botão Executar na barra de ferramentas.

Exemplo

A consulta a seguir chama um procedimento armazenado chamado uspGetWhereUsedProductID. Quando o procedimento armazenado tem parâmetros de entrada, você deve fornecer valores de parâmetro ao executar a consulta.

uspGetWhereUsedProductID  

Clique no botão Executar ( ! ). A tabela a seguir fornece um exemplo de uspGetWhereUsedProductID parâmetros para os quais você fornece valores na caixa de diálogo Definir Parâmetro de Consulta .

@StartProductID 820
@CheckDate 20010115

Tipo de comando TableDirect

Quando você seleciona o Comando typeTableDirect, o designer de consulta baseado em texto apresenta dois painéis: Consulta e Resultado. Se você inserir uma tabela e clicar no botão Executar , todas as colunas dessa tabela serão retornadas.

Exemplo

Para um tipo de fonte de dados OLE DB, a consulta de conjunto de dados a seguir retorna um conjunto de resultados para todos os tipos de contato na ContactType tabela.

ContactType

Quando você insere o nome ContactTypeda tabela, ele é o equivalente à criação da instrução SELECT * FROM ContactTypeSQL.