Instrução SELECT

A instrução SELECT indica ao motor de base de dados do Microsoft Access para devolver informações da base de dados como um conjunto de registos.

Sintaxe

SELECT [predicado] { * | tabela.* | [tabela.]campo1 [AS alias1] [, [tabela.]campo2 [AS alias2] [, ...]]}
FROM expressãodatabela [, ...] [IN basededadosexterna]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]

A instrução SELECT tem as seguintes partes:

Parte

Descrição

predicado

Um dos seguintes predicados: ALL, DISTINCT, DISTINCTROW ou TOP. Utiliza o predicado para restringir o número de registos devolvidos. Se nenhum predicado for especificado, a predefinição é ALL.

*

Especifica que estão selecionados todos os campos da tabela ou tabelas especificadas.

tabela

O nome da tabela que contém os campos a partir dos quais os registos são selecionados.

campo1, campo2

Os nomes dos campos que contêm os dados que pretende obter. Se incluir mais do que um campo, os dados serão obtidos na ordem indicada.

alias1, alias2

Os nomes a utilizar como cabeçalhos de colunas em vez dos nomes de colunas originais em tabela.

expressãodatabela

O nome da tabela ou tabelas que contêm os dados que pretende obter.

basededadosexterna

O nome da base de dados que contém as tabelas em expressãodatabela, se não estiverem na base de dados atual.

Observações

Para efetuar esta operação, o motor de base de dados do Microsoft Access procura a tabela ou tabelas especificadas, extrai as colunas escolhidas, seleciona as linhas que correspondem aos critérios e ordena ou agrupa as linhas resultantes pela ordem especificada.

As instruções SELECT não alteram os dados da base de dados.

SELECT é, normalmente, a primeira palavra numa instrução SQL. A maioria das instruções SQL são instruções SELECT ou SELECT...INTO.

A sintaxe mínima para uma instrução SELECT é:

SELECT campos FROM tabela

É possível utilizar um asterisco (*) para selecionar todos os campos numa tabela. O seguinte exemplo seleciona todos os campos da tabela Empregados:

SELECT * FROM Employees;

Se o nome de um campo for incluído em mais do que uma tabela na cláusula FROM, preceda-o do nome da tabela e do . operador (dot). No exemplo seguinte, o campo Departamento está nas tabelas Empregados e Supervisores. A instrução SQL seleciona os departamentos da tabela Empregados e os nomes dos supervisores da tabela Supervisores:

SELECT Employees.Department, Supervisors.SupvName FROM Employees INNER JOIN Supervisors WHERE Employees.Department = Supervisors.Department;

Quando um objeto Conjuntoderegistos é criado, o motor de base de dados do Microsoft Access utiliza o nome do campo da tabela como nome do objeto Campo no objeto Conjuntoderegistos. Se pretende um nome de campo diferente ou um nome que não seja implícito pela expressão utilizada para gerar o campo, utilize AS palavra reservada. O exemplo seguinte utiliza o título Nascimento para atribuir o nome ao objeto Campo devolvido no objeto Conjuntoderegistos resultante:

SELECT BirthDate AS Birth FROM Employees;

Sempre que utiliza as funções agregadas ou consultas que devolvem nomes de objetos Campo ambíguos ou duplicados, tem de utilizar a cláusula AS para fornecer um nome alternativo para o objeto Campo. O exemplo seguinte utiliza o título ContagemDoCabeçalho para atribuir o nome ao objeto Campo devolvido no objeto Conjuntoderegistos resultante:

SELECT COUNT(EmployeeID) AS HeadCount FROM Employees;

É possível utilizar as outras cláusulas numa instrução SELECT para restringir e organizar os dados devolvidos. Para obter mais informações, consulte o tópico de Ajuda para a cláusula que estiver a utilizar.

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×