Entrar com a conta da Microsoft
Entrar ou criar uma conta.
Olá,
Selecionar uma conta diferente.
Você tem várias contas
Escolha a conta com a qual você deseja entrar.
Predicados ALL, DISTINCT, DISTINCTROW, TOP

Especifica registos selecionados com consultas SQL.

Sintaxe

SELECIONAR [TUDO | DISTINCT | DISTINCTROW | [TOP n [PERCENT]]]
Tabela FROM

Uma instrução SELECT que contém estes predicados tem as seguintes partes:

Parte

Descrição

ALL

Assumido se não incluir um dos predicados. O motor de base de dados do Microsoft Access seleciona todos os registos que cumprem as condições na instrução SQL. Os dois exemplos seguintes são equivalentes e devolvem todos os registos da tabela Funcionários:

SELECT ALL *
FROM Employees
ORDER BY EmployeeID;
SELECT *
FROM Employees
ORDER BY EmployeeID;

DISTINCT

Omite registos que contêm dados duplicados nos campos selecionados. Para serem incluídos nos resultados da consulta, os valores de cada campo listado na instrução SELECT têm de ser exclusivos. Por exemplo, vários funcionários listados numa tabela Funcionários podem ter o mesmo apelido. Se dois registos contiverem o Smith no campo LastName, a seguinte instrução SQL devolve apenas um registo que contém Smith:

SELECT DISTINCT LastName
FROM Employees;

Se omitir DISTINCT, esta consulta devolve ambos os registos smith.

Se a cláusula SELECT contiver mais do que um campo, a combinação de valores de todos os campos tem de ser exclusiva para que um determinado registo seja incluído nos resultados.

O resultado de uma consulta que utiliza DISTINCT não é atualizável e não reflete as alterações subsequentes efetuadas por outros utilizadores.

DISTINCTROW

Omite dados com base em registos duplicados inteiros e não apenas em campos duplicados. Por exemplo, pode criar uma consulta que associe as tabelas Clientes e Encomendas no campo IDDoCliente. A tabela Clientes não contém campos CustomerID duplicados, mas a tabela Encomendas tem porque cada cliente pode ter muitas encomendas. A seguinte instrução SQL mostra como pode utilizar a DISTINCTROW para produzir uma lista de empresas que têm, pelo menos, uma encomenda, mas sem detalhes sobre essas encomendas:

SELECT DISTINCTROW CompanyName
FROM Customers INNER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY CompanyName;

Se omitir DISTINCTROW, esta consulta produz várias linhas para cada empresa que tenha mais do que uma encomenda.

DISTINCTROW tem um efeito apenas quando seleciona campos de algumas, mas não todas, das tabelas utilizadas na consulta. DISTINCTROW é ignorado se a consulta incluir apenas uma tabela ou se exportar campos de todas as tabelas.

TOP n [PERCENT]

Devolve um determinado número de registos que se enquadram na parte superior ou inferior de um intervalo especificado por uma cláusula ORDER BY. Suponha que pretende os nomes dos 25 melhores estudantes da turma de 1994:

SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage DESC;

Se não incluir a cláusula ORDER BY, a consulta devolverá um conjunto arbitrário de 25 registos da tabela Estudantes que satisfazem a cláusula WHERE.

O predicado TOP não escolhe entre valores iguais. No exemplo anterior, se as médias de 25 e 26 pontos mais altos forem as mesmas, a consulta devolverá 26 registos.

Também pode utilizar a palavra reservada PERCENT para devolver uma determinada percentagem de registos que se enquadram na parte superior ou inferior de um intervalo especificado por uma cláusula ORDER BY. Suponha que, em vez dos 25 melhores alunos, quer os 10% inferiores da turma:

SELECT TOP 10 PERCENT
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage ASC;

O predicado do ASC especifica uma devolução dos valores inferiores. O valor que se segue a TOP tem de ser um Número Inteiro não assinado.

O TOP não afeta se a consulta é ou não atualizável.

tabela

O nome da tabela da qual os registros são recuperados.



Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?
Ao pressionar enviar, seus comentários serão usados para aprimorar os produtos e serviços da Microsoft. Seu administrador de TI poderá coletar esses dados. Política de Privacidade.

Agradecemos seus comentários!

×