Editar instruções SQL para ajustar os resultados da consulta

Editar instruções SQL para ajustar os resultados da consulta

Se suas consultas não estão funcionando o suficiente, adicionar algumas instruções básicas SQL ajudar a concentrar seus resultados. Vamos ver alguns tipos de instruções SQL e as cláusulas ou partes que você pode editar para obter os resultados que deseja.

Observação:  Este artigo não é válido para aplicativos Web do Access, o tipo de banco de dados criado com o Access e publicado online.

Neste artigo

Criar uma instrução Select

Uma SQL de seleção tem duas ou três cláusulas. A cláusula SELECT informa ao banco de dados onde procurar os dados e solicita que ele retorne um resultado específico.

Observação:  As instruções SELECT sempre terminam com dois pontos e vírgulas (;) no final da última cláusula ou em uma linha por si só no final da instrução SQL.

A instrução select a seguir solicita que o Access receba informações das colunas Endereço de Email e Empresa, da tabela Contatos, especificamente onde encontra "Seattle" na coluna Cidade.

Guia Objeto SQL mostrando uma instrução SELECT

A consulta acima tem três cláusulas SELECT, FROM e WHERE.

1. A cláusula SELECT lista as colunas que contêm os dados que você deseja usar e tem um operador (SELECT) seguido por dois identificadores (Endereço de Email e Empresa). Se um identificador tiver espaços ou caracteres especiais (como "Endereço de email"), coloque o identificador entre colchetes.

2. A cláusula FROM identifica a tabela de origem. Neste exemplo, ele tem um operador (FROM) seguido de um identificador (Contatos).

3. A cláusula WHERE é uma cláusula opcional. O exemplo tem um operador (WHERE) seguido de uma expressão (City="Seattle").

Para obter mais informações sobre consultas selecionadas, consulte Criar uma consulta de seleção simples.

Aqui está uma lista de cláusulas SQL comuns:

SQL cláusula

O que ela faz

Obrigatório?

SELECT

Lista os campos que contêm dados de interesse.

Sim

FROM

Lista as tabelas que contêm os campos listados na cláusula SELECT.

Sim

WHERE

Especifica critérios de campo que devem ser atendidos por cada registro a ser incluído nos resultados.

Não

ORDER BY

Especifica como classificar os resultados.

Não

GROUP BY

Em uma SQL que contém funções agregadas, lista campos que não são resumidos na cláusula SELECT.

Somente se houver tais campos

HAVING

Em uma SQL que contém funções agregadas, especifica condições que se aplicam aos campos resumidos na instrução SELECT.

Não

Cada SQL é feita de termos. Aqui está uma lista de alguns termos SQL comuns.

SQL termo

Explicação

Exemplo

identificador

Um nome que você usa para identificar um objeto de banco de dados, como o nome da coluna.

[Endereço de email] e Empresa

operador

Uma palavra-chave que representa uma ação ou modifica uma ação.

AS

constante

Um valor que não muda, como um número ou NULL.

42

expressão

Uma combinação de identificadores, operadores, constantes e funções que é avaliada como um único valor.

>= Produtos. [Preço da unidade]

Início da página

Personalização da cláusula SELECT

Personalizar

Exemplo

Para ver apenas os valores distintos.

Use a palavra-chave DISTINCT em sua cláusula SELECT.

Por exemplo, se seus clientes são de várias filiais diferentes e alguns têm o mesmo número de telefone e você deseja ver apenas um número de telefone listado uma vez, sua cláusula SELECT seria assim:

SELECT DISTINCT [txtCustomerPhone] 

Para alterar a forma como um identificador aparece no modo folha de dados para melhorar a capacidade de leitura.

Use o operador AS (Uma palavra-chave que representa uma ação ou modifica uma ação) com um alias de campo em sua cláusula SELECT. Um alias de campo é um nome que você atribui a um campo para facilitar a leitura dos resultados.

SELECT [txtCustPhone] AS [Customer Phone]

Personalização da cláusula FROM

Personalizar

Exemplo

Você pode usar um alias de tabela ou um nome diferente que você atribui a uma tabela em uma instrução select. Um alias de tabela será útil se o nome do nome da tabela for longo, especialmente quando você tiver vários campos com o mesmo nome de tabelas diferentes.

Para selecionar dados de dois campos, ambos nomeados ID, um deles vem da tabela tblCustomer e o outro da tabela tblOrder:

SELECT [tblCustomer].[ID], 
[tblOrder].[ID]

Use o operador AS para definir aliases de tabela na cláusula FROM:

FROM [tblCustomer] AS [C], 
[tblOrder] AS [O]

Em seguida, você pode usar esses aliases de tabela em sua cláusula SELECT, da seguinte forma:

SELECT [C].[ID], 
[O].[ID]

Use associações para combinar pares de registros de duas fontes de dados em um único resultado ou para especificar se devem incluir registros de uma das tabelas se não houver registro correspondente na tabela relacionada.

Participe das tabelas para que a consulta combine os itens das tabelas e exclua itens quando não houver registro correspondente na outra tabela

Veja como pode ser a cláusula FROM:

FROM [tblCustomer] 
INNER JOIN [tblOrder]
ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

Sobre o uso de junções

Há dois tipos de junções, inserções internas e externas. As junções internas são mais comuns em consultas. Quando você executar uma consulta com uma junção interna, o resultado mostra apenas os itens onde existe um valor comum em ambas as tabelas ingressadas.

As junções externas especificam se devem incluir dados em que nenhum valor comum exista. As junções externas são direcionais, o que significa que você pode especificar se deve incluir todos os registros da primeira tabela especificada na junção (chamada de junção à esquerda) ou para incluir todos os registros da segunda tabela na junção (chamada de junção à direita). Uma junção externa tem a seguinte sintaxe SQL:

FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1 = table2.field2

Confira mais informações sobre como usar junções em uma consulta em Associar tabelas e consultas.

Início da página

Personalização da cláusula WHERE

A cláusula WHERE inclui critérios que ajudam a limitar o número de itens retornados em uma consulta. Consulte exemplos de critérios de consulta e como eles funcionam.

Um exemplo de como você pode personalizar a cláusula WHERE básica é limitar os resultados de uma consulta; Suponha que você queira localizar o número de telefone de um cliente e só possa se lembrar de seu sobrenome como Rosca. Neste exemplo, os sobrenomes são armazenados em um campo LastName, portanto, SQL sintaxe seria:

WHERE [LastName]='Bagel'

Use a cláusula WHERE também para combinar fontes de dados para colunas que tenham dados correspondentes, mas tipos de dados diferentes. Isso é útil, pois você não pode criar uma junção entre campos com tipos de dados diferentes. Use um campo como um critério para o outro campo, com a palavra-chave LIKE. Por exemplo, se você quiser usar dados de uma tabela Assets e de Funcionários, somente quando o tipo de ativo no campo de tipo de ativo da tabela Assets tiver o número 3 no campo Quantidade da tabela Funcionários, veja como sua cláusula WHERE ficaria:

WHERE field1 LIKE field2

Importante:  Não é possível especificar critérios para um campo usado com uma função agregada em uma cláusula WHERE. Em vez disso, use uma cláusula HAVING para especificar critérios para os campos agregados.

Início da página

Personalização com o operador UNION

Use o operador UNION quando quiser ver uma exibição combinada de resultados de várias consultas selecionadas semelhantes. Por exemplo, se o banco de dados tiver uma tabela Produtos e uma tabela de Serviços e ambos têm três campos: oferta exclusiva ou produto ou serviço, preço, garantia ou garantia. Embora a tabela Produtos armazene informações de garantia e a tabela Serviços armazene informações de garantia, as informações básicas são as mesmas. Você pode usar uma consulta de união para combinar os três campos das duas tabelas desta forma:

SELECT name, price, warranty, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee, exclusive_offer
FROM Services;

Quando você executar a consulta, os dados de cada conjunto de campos correspondentes são combinados em um campo de saída. Para incluir qualquer linha duplicada nos resultados, use o operador ALL.

Observação:  A instrução Select deve ter o mesmo número de campos de saída, na mesma ordem, e com os mesmos tipos de dados ou compatíveis. Para fins de uma consulta de união, os tipos de dados Number e Text são compatíveis.

Para obter mais informações sobre consultas da União, consulte using a union query to view a unified result from multiple queries.

Início da página

Precisa de mais ajuda?

Expanda suas habilidades no Office
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.

×